Compare commits
106 Commits
elpaca-mig
...
master
Author | SHA1 | Date | |
---|---|---|---|
1d31f870c5 | |||
9f3f835253 | |||
066902e37a | |||
d790bc9e25 | |||
1ea8333994 | |||
e464d8fec5 | |||
14a32c151c | |||
bfdf5f221e | |||
ae29832dbc | |||
ae6ce6b19c | |||
8e1abde359 | |||
c25cd05b15 | |||
5deba06fb0 | |||
7dcc785da6 | |||
5eb3654d0c | |||
|
cbcf03c784 | ||
|
a9d5ee5eb0 | ||
|
8402c6f1d2 | ||
|
da8b6b3b75 | ||
|
526bf6e2a9 | ||
|
04870cd682 | ||
|
46108ab249 | ||
|
a8e23460f9 | ||
|
a88018fe47 | ||
|
5757681ce0 | ||
|
6c393b3837 | ||
|
618f927cb9 | ||
|
bb259bf358 | ||
|
3f7de563db | ||
|
6ae5f4c503 | ||
|
e6c3d55fc8 | ||
|
36331ea60c | ||
|
6b18d0accf | ||
|
9a764fc7c8 | ||
|
9100167e4d | ||
|
e0e98bc237 | ||
|
4c989fcda3 | ||
|
35f8c10e7c | ||
|
ac49823b4c | ||
daaead9c1e | |||
|
c5c86145b1 | ||
|
32755e1411 | ||
|
de27a133e7 | ||
|
f89155e4d2 | ||
|
f345cf8f18 | ||
|
4cb9c006d7 | ||
1dd54ba638 | |||
517c2f333e | |||
d850ba999d | |||
dd9f5ccf88 | |||
59da59c74f | |||
1f36c4942b | |||
eaa46e7034 | |||
f00d9bdb12 | |||
1003c33dee | |||
a493a530be | |||
01361b7217 | |||
cdd8ed60e9 | |||
fd033ba72c | |||
9aae7c0c16 | |||
aa9be16abf | |||
342fc4f4c6 | |||
d62d538562 | |||
ffb55c157b | |||
cd7698bebf | |||
700cccfd60 | |||
814966b172 | |||
c4a9a60112 | |||
9b9da29b7a | |||
6cced9dad4 | |||
50542d9b24 | |||
701e8d7d82 | |||
10b8f61d27 | |||
58432fe908 | |||
79908fae93 | |||
b597b6e239 | |||
9e8cd58d7f | |||
6643428fca | |||
10a732ad75 | |||
e6a75734fb | |||
eb22968ab4 | |||
b12f84c007 | |||
54645ba497 | |||
6cb9597df7 | |||
51e6116100 | |||
4fd99eae63 | |||
b8f2452d11 | |||
ddb4a257cf | |||
3a6c9fbb49 | |||
f3b8a769c6 | |||
4a27118f24 | |||
7ddc215dcc | |||
3559edb3a5 | |||
0e611dbb57 | |||
3a71c8600c | |||
280debd530 | |||
e34248ede3 | |||
ea3ba8e2d6 | |||
69411c14f6 | |||
f560d87aa3 | |||
e188936253 | |||
f91ff8c987 | |||
f4b87c40eb | |||
26fb168ec5 | |||
16e6b980ba | |||
204569fff1 |
@ -1,8 +0,0 @@
|
|||||||
language: generic
|
|
||||||
|
|
||||||
script: bash ./gen-gh-pages/deploy.sh
|
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- ENCRYPTION_LABEL: "73e6c870aa87"
|
|
||||||
- COMMIT_AUTHOR_EMAIL: "IvanMalison@gmail.com"
|
|
||||||
- COMMIT_AUTHOR_NAME: "Ivan Malison"
|
|
@ -1 +1 @@
|
|||||||
Subproject commit 9c8540a56432db6555755a9a649b4874833520ed
|
Subproject commit a82a8a0cffb34b5eae38e46d88f02641bf8a8fe5
|
@ -4,6 +4,7 @@
|
|||||||
(setq mc/cmds-to-run-for-all
|
(setq mc/cmds-to-run-for-all
|
||||||
'(
|
'(
|
||||||
TeX-insert-backslash
|
TeX-insert-backslash
|
||||||
|
align
|
||||||
backward-sexp
|
backward-sexp
|
||||||
beginning-of-buffer
|
beginning-of-buffer
|
||||||
beginning-of-visual-line
|
beginning-of-visual-line
|
||||||
|
@ -1514,20 +1514,26 @@ https://github.com/alpaker/Fill-Column-Indicator/issues/21 for more details
|
|||||||
(advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company)
|
(advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company)
|
||||||
(add-hook 'prog-mode-hook 'fci-mode)))
|
(add-hook 'prog-mode-hook 'fci-mode)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** highlight-indent-guides
|
** indent-bars
|
||||||
If the load-theme hook from this package starts causing trouble check for
|
#+begin_src emacs-lisp
|
||||||
custom-set-faces in your custom file.
|
(use-package indent-bars
|
||||||
#+BEGIN_SRC emacs-lisp
|
:disabled t
|
||||||
(use-package highlight-indent-guides
|
:straight (indent-bars :type git :host github :repo "jdtsmith/indent-bars")
|
||||||
:commands highlight-indent-guides-mode
|
|
||||||
:diminish highlight-indent-guides-mode
|
|
||||||
:preface
|
|
||||||
(progn
|
|
||||||
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
|
|
||||||
:config
|
:config
|
||||||
(progn
|
(require 'indent-bars-ts) ; not needed with straight
|
||||||
(setq highlight-indent-guides-method 'fill)))
|
:custom
|
||||||
#+END_SRC
|
(indent-bars-treesit-support t)
|
||||||
|
(indent-bars-treesit-ignore-blank-lines-types '("module"))
|
||||||
|
;; Add other languages as needed
|
||||||
|
(indent-bars-treesit-scope '((python function_definition class_definition for_statement
|
||||||
|
if_statement with_statement while_statement)))
|
||||||
|
;; wrap may not be needed if no-descend-list is enough
|
||||||
|
;; (indent-bars-treesit-wrap '((python argument_list parameters ; for python, as an example
|
||||||
|
;; list list_comprehension
|
||||||
|
;; dictionary dictionary_comprehension
|
||||||
|
;; parenthesized_expression subscript)))
|
||||||
|
:hook ((prog-mode) . indent-bars-mode))
|
||||||
|
#+end_src
|
||||||
** man-mode
|
** man-mode
|
||||||
Man page escape sequences aren't properly handled by emacs pager. This function
|
Man page escape sequences aren't properly handled by emacs pager. This function
|
||||||
fixes that, but for now, it needs to be run manually, since I haven't figured
|
fixes that, but for now, it needs to be run manually, since I haven't figured
|
||||||
@ -1785,7 +1791,8 @@ bind-key and global-set-key forms.
|
|||||||
|
|
||||||
(defun imalison:do-rg-default-directory (&rest args)
|
(defun imalison:do-rg-default-directory (&rest args)
|
||||||
(interactive)
|
(interactive)
|
||||||
(apply 'consult-ripgrep default-directory args))
|
(let ((consult-ripgrep-args (concat consult-ripgrep-args " --no-ignore" " --hidden")))
|
||||||
|
(apply 'consult-ripgrep default-directory args)))
|
||||||
|
|
||||||
(emit-prefix-selector imalison:do-rg
|
(emit-prefix-selector imalison:do-rg
|
||||||
consult-ripgrep
|
consult-ripgrep
|
||||||
@ -2316,6 +2323,13 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
|
|||||||
(unbind-key "C-j" python-mode-map)
|
(unbind-key "C-j" python-mode-map)
|
||||||
(add-hook 'python-mode-hook #'imalison:python-mode)))
|
(add-hook 'python-mode-hook #'imalison:python-mode)))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
*** ruby
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package ruby-mode
|
||||||
|
:config
|
||||||
|
(setf (alist-get 'ruby-ts-mode apheleia-mode-alist)
|
||||||
|
'(rubocop)))
|
||||||
|
#+end_src
|
||||||
*** go
|
*** go
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package go-mode
|
(use-package go-mode
|
||||||
@ -2892,6 +2906,10 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
|
|||||||
:defer t
|
:defer t
|
||||||
:mode ("\\.kt\\'"))
|
:mode ("\\.kt\\'"))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
*** swift
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(use-package swift-mode)
|
||||||
|
#+end_src
|
||||||
*** groovy
|
*** groovy
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package groovy-mode)
|
(use-package groovy-mode)
|
||||||
@ -3352,7 +3370,8 @@ emr (emacs refactor) provides support for refactoring in many programming langua
|
|||||||
(file-name-directory
|
(file-name-directory
|
||||||
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
|
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
|
||||||
(eat-compile-terminfo)
|
(eat-compile-terminfo)
|
||||||
(setq eat-term-shell-integration-directory (imalison:join-paths eat--install-path "integration"))))
|
(setq eat-term-shell-integration-directory
|
||||||
|
(imalison:join-paths eat--install-path "integration"))))
|
||||||
#+end_src
|
#+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
|
||||||
@ -3636,15 +3655,6 @@ I had to disable this mode because something that it does messes with coding set
|
|||||||
(progn
|
(progn
|
||||||
(setq dtrt-indent-active-mode-line-info " [⟼]")))
|
(setq dtrt-indent-active-mode-line-info " [⟼]")))
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
** indent-guide
|
|
||||||
#+BEGIN_SRC emacs-lisp
|
|
||||||
(use-package indent-guide
|
|
||||||
:disabled t
|
|
||||||
:config
|
|
||||||
(progn
|
|
||||||
(indent-guide-global-mode -1)
|
|
||||||
(setq indent-guide-delay 0.1)))
|
|
||||||
#+END_SRC
|
|
||||||
** rainbow-delimiters
|
** rainbow-delimiters
|
||||||
#+BEGIN_SRC emacs-lisp
|
#+BEGIN_SRC emacs-lisp
|
||||||
(use-package rainbow-delimiters
|
(use-package rainbow-delimiters
|
||||||
|
5
dotfiles/emacs.d/snippets/python-mode/inp
Normal file
5
dotfiles/emacs.d/snippets/python-mode/inp
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: inp
|
||||||
|
# key: inp
|
||||||
|
# --
|
||||||
|
import numpy as np
|
5
dotfiles/emacs.d/snippets/python-mode/isa
Normal file
5
dotfiles/emacs.d/snippets/python-mode/isa
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# -*- mode: snippet -*-
|
||||||
|
# name: isa
|
||||||
|
# key: isa
|
||||||
|
# --
|
||||||
|
import sqlalchemy as sa
|
@ -24,7 +24,6 @@ pom.xml
|
|||||||
TAGS
|
TAGS
|
||||||
|
|
||||||
# Vim
|
# Vim
|
||||||
*.sw*
|
|
||||||
*.tmp*
|
*.tmp*
|
||||||
|
|
||||||
# JavaScript
|
# JavaScript
|
||||||
|
@ -1,20 +0,0 @@
|
|||||||
binding "gtk-emacs-text-entry"
|
|
||||||
{
|
|
||||||
bind "<alt>BackSpace" { "delete-from-cursor" (word-ends, -1) }
|
|
||||||
}
|
|
||||||
|
|
||||||
gtk-theme-name="Paper"
|
|
||||||
gtk-icon-theme-name="Paper"
|
|
||||||
gtk-font-name="Roboto 11"
|
|
||||||
gtk-cursor-theme-name="Paper"
|
|
||||||
gtk-cursor-theme-size=0
|
|
||||||
gtk-toolbar-style=GTK_TOOLBAR_BOTH
|
|
||||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
|
||||||
gtk-button-images=1
|
|
||||||
gtk-menu-images=1
|
|
||||||
gtk-enable-event-sounds=1
|
|
||||||
gtk-enable-input-feedback-sounds=1
|
|
||||||
gtk-xft-antialias=1
|
|
||||||
gtk-xft-hinting=1
|
|
||||||
gtk-xft-hintstyle="hintfull"
|
|
||||||
|
|
@ -2,18 +2,25 @@
|
|||||||
import argparse
|
import argparse
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import logging
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class BrightnessManager(object):
|
class BrightnessManager(object):
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def find_brightness(cls):
|
def find_brightness(cls):
|
||||||
|
items_in_backlight_directory = os.listdir("/sys/class/backlight")
|
||||||
|
if len(items_in_backlight_directory) > 1:
|
||||||
|
logger.warning(f"More than one entry in the backlight directory {items_in_backlight_directory}")
|
||||||
return cls.from_path(
|
return cls.from_path(
|
||||||
os.path.join("/sys/class/backlight", os.listdir("/sys/class/backlight")[0])
|
os.path.join("/sys/class/backlight", items_in_backlight_directory[0])
|
||||||
)
|
)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_path(cls, path):
|
def from_path(cls, path):
|
||||||
|
logger.warning(f"Using path {path}")
|
||||||
return cls(
|
return cls(
|
||||||
set_brightness_filepath=os.path.join(path, "brightness"),
|
set_brightness_filepath=os.path.join(path, "brightness"),
|
||||||
actual_brightness_filepath=os.path.join(path, "actual_brightness"),
|
actual_brightness_filepath=os.path.join(path, "actual_brightness"),
|
||||||
@ -21,7 +28,7 @@ class BrightnessManager(object):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def __init__(
|
def __init__(
|
||||||
self, set_brightness_filepath, max_brightness_filepath, actual_brightness_filepath
|
self, set_brightness_filepath, max_brightness_filepath, actual_brightness_filepath
|
||||||
):
|
):
|
||||||
self.set_brightness_filepath = set_brightness_filepath
|
self.set_brightness_filepath = set_brightness_filepath
|
||||||
self.max_brightness_filepath = max_brightness_filepath
|
self.max_brightness_filepath = max_brightness_filepath
|
||||||
@ -71,6 +78,11 @@ def build_parser():
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
args = build_parser().parse_args()
|
args = build_parser().parse_args()
|
||||||
BrightnessManager.find_brightness().increment_by_proportion(float(args.change) / 100)
|
symlink_path = os.readlink("/home/imalison/.config/brightness_manager/symlink")
|
||||||
|
if os.path.exists(symlink_path):
|
||||||
|
manager = BrightnessManager.from_path(symlink_path)
|
||||||
|
else:
|
||||||
|
manager = BrightnessManager.find_brightness()
|
||||||
|
manager.increment_by_proportion(float(args.change) / 100)
|
||||||
if args.do_print:
|
if args.do_print:
|
||||||
print(int(IntelBrightnessManager.current_proportion * 100))
|
print(int(manager.current_proportion * 100))
|
||||||
|
7
dotfiles/lib/functions/ns
Executable file
7
dotfiles/lib/functions/ns
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
function nr {
|
||||||
|
sk --ansi -i -c 'nix-search "{}"' | get_cols 1
|
||||||
|
}
|
||||||
|
|
||||||
|
nr "$@"
|
376
nix-darwin/flake.lock
Normal file
376
nix-darwin/flake.lock
Normal file
@ -0,0 +1,376 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"agenix": {
|
||||||
|
"inputs": {
|
||||||
|
"darwin": "darwin",
|
||||||
|
"home-manager": "home-manager_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"railbird-secrets",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1707830867,
|
||||||
|
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
|
||||||
|
"owner": "ryantm",
|
||||||
|
"repo": "agenix",
|
||||||
|
"rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "ryantm",
|
||||||
|
"repo": "agenix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"brew-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1718075954,
|
||||||
|
"narHash": "sha256-4TeUhv5VLEufP+Z/NkKnUk4NUaf59cMsj6NvsVbE+8w=",
|
||||||
|
"owner": "Homebrew",
|
||||||
|
"repo": "brew",
|
||||||
|
"rev": "3f08c75e7b950d4340dab462f3e7f77e8093fa2b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Homebrew",
|
||||||
|
"ref": "4.3.5",
|
||||||
|
"repo": "brew",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"darwin": {
|
||||||
|
"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-utils": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"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_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_3"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709126324,
|
||||||
|
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1723399884,
|
||||||
|
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"home-manager_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"railbird-secrets",
|
||||||
|
"agenix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1703113217,
|
||||||
|
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"homebrew-cask": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722820732,
|
||||||
|
"narHash": "sha256-Y8TBYxYeUVvgYFylqBUtWxFuOZVstXW+yylI2wz2eQ0=",
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-cask",
|
||||||
|
"rev": "9e3db5dd3130f9bf388409f39ce1706ca7b59efe",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-cask",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"homebrew-core": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722823168,
|
||||||
|
"narHash": "sha256-3sKYVUrhuS1fZJkrYAtB+O67dvaKyTvXXI9UqjAgI8A=",
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-core",
|
||||||
|
"rev": "dd20841f7fe7375738708bc2f458152906a71f1d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "homebrew",
|
||||||
|
"repo": "homebrew-core",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-darwin": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722609272,
|
||||||
|
"narHash": "sha256-Kkb+ULEHVmk07AX+OhwyofFxBDpw+2WvsXguUS2m6e4=",
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "f7142b8024d6b70c66fd646e1d099d3aa5bfec49",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-darwin_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716329735,
|
||||||
|
"narHash": "sha256-ap51w+VqG21vuzyQ04WrhI2YbWHd3UGz0e7dc/QQmoA=",
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"rev": "eac4f25028c1975a939c8f8fba95c12f8a25e01c",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "LnL7",
|
||||||
|
"repo": "nix-darwin",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nix-homebrew": {
|
||||||
|
"inputs": {
|
||||||
|
"brew-src": "brew-src",
|
||||||
|
"flake-utils": "flake-utils",
|
||||||
|
"nix-darwin": "nix-darwin_2",
|
||||||
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1719720211,
|
||||||
|
"narHash": "sha256-FNK5ZxmNC+V/wOuioc5HqkUy0ld4eW3NqcsZHLYg9HI=",
|
||||||
|
"owner": "zhaofengli-wip",
|
||||||
|
"repo": "nix-homebrew",
|
||||||
|
"rev": "0afc51fd86693c73e4b60be8ed8c782c4c09b4cc",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "zhaofengli-wip",
|
||||||
|
"repo": "nix-homebrew",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1687274257,
|
||||||
|
"narHash": "sha256-TutzPriQcZ8FghDhEolnHcYU2oHIG5XWF+/SUBNnAOE=",
|
||||||
|
"path": "/nix/store/22qgs3skscd9bmrxv9xv4q5d4wwm5ppx-source",
|
||||||
|
"rev": "2c9ecd1f0400076a4d6b2193ad468ff0a7e7fdc5",
|
||||||
|
"type": "path"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1716330097,
|
||||||
|
"narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722640603,
|
||||||
|
"narHash": "sha256-TcXjLVNd3VeH1qKPH335Tc4RbFDbZQX+d7rqnDUoRaY=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "81610abc161d4021b29199aa464d6a1a521e0cc9",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixpkgs-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709703039,
|
||||||
|
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"railbird-secrets": {
|
||||||
|
"inputs": {
|
||||||
|
"agenix": "agenix",
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": "nixpkgs_4"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1722639965,
|
||||||
|
"narHash": "sha256-ZRe5Z5s/UNaXI2piyncQ3YrFl5q3GryZAfFTyeJ/vhM=",
|
||||||
|
"ref": "refs/heads/master",
|
||||||
|
"rev": "9a92b83c3ad376620db3556c33e51a4300c5badd",
|
||||||
|
"revCount": 73,
|
||||||
|
"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": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"homebrew-cask": "homebrew-cask",
|
||||||
|
"homebrew-core": "homebrew-core",
|
||||||
|
"nix-darwin": "nix-darwin",
|
||||||
|
"nix-homebrew": "nix-homebrew",
|
||||||
|
"nixpkgs": "nixpkgs_3",
|
||||||
|
"railbird-secrets": "railbird-secrets"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_3": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
208
nix-darwin/flake.nix
Normal file
208
nix-darwin/flake.nix
Normal file
@ -0,0 +1,208 @@
|
|||||||
|
{
|
||||||
|
description = "Example Darwin system flake";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||||
|
nix-darwin.url = "github:LnL7/nix-darwin";
|
||||||
|
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
railbird-secrets = {
|
||||||
|
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
|
||||||
|
};
|
||||||
|
nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew";
|
||||||
|
|
||||||
|
# Optional: Declarative tap management
|
||||||
|
homebrew-core = {
|
||||||
|
url = "github:homebrew/homebrew-core";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
homebrew-cask = {
|
||||||
|
url = "github:homebrew/homebrew-cask";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
home-manager.url = "github:nix-community/home-manager";
|
||||||
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, ... }:
|
||||||
|
let
|
||||||
|
libDir = ../dotfiles/lib;
|
||||||
|
configuration = { pkgs, config, ... }: {
|
||||||
|
networking.hostName = "mac-demarco-mini";
|
||||||
|
imports = [ (import ./gitea-actions-runner.nix) ];
|
||||||
|
services.gitea-actions-runner = {
|
||||||
|
user = "gitea-runner";
|
||||||
|
instances.nix = {
|
||||||
|
enable = true;
|
||||||
|
name = config.networking.hostName;
|
||||||
|
url = "https://dev.railbird.ai";
|
||||||
|
token = "H0A7YXAWsKSp9QzvMymfJI12hbxwR7UerEHpCJUe";
|
||||||
|
labels = [
|
||||||
|
"nix-darwin-${pkgs.system}:host"
|
||||||
|
"macos-aarch64-darwin"
|
||||||
|
"nix:host"
|
||||||
|
];
|
||||||
|
settings = {
|
||||||
|
cache = {
|
||||||
|
enabled = true;
|
||||||
|
};
|
||||||
|
host = {
|
||||||
|
workdir_parent = "/var/lib/gitea-runner/action-cache-dir";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
hostPackages = with pkgs; [
|
||||||
|
bash
|
||||||
|
coreutils
|
||||||
|
curl
|
||||||
|
direnv
|
||||||
|
gawk
|
||||||
|
just
|
||||||
|
git-lfs
|
||||||
|
isort
|
||||||
|
gitFull
|
||||||
|
gnused
|
||||||
|
ncdu
|
||||||
|
nixFlakes
|
||||||
|
nodejs
|
||||||
|
openssh
|
||||||
|
wget
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
launchd.daemons.gitea-runner-nix.serviceConfig.EnvironmentVariables = {
|
||||||
|
XDG_CONFIG_HOME = "/var/lib/gitea-runner";
|
||||||
|
XDG_CACHE_HOME = "/var/lib/gitea-runner/.cache";
|
||||||
|
XDG_RUNTIME_DIR = "/var/lib/gitea-runner/tmp";
|
||||||
|
};
|
||||||
|
|
||||||
|
# launchd.daemons.gitea-runner-restarter = {
|
||||||
|
# serviceConfig = {
|
||||||
|
# ProgramArguments = [
|
||||||
|
# "/usr/bin/env"
|
||||||
|
# "bash"
|
||||||
|
# "-c"
|
||||||
|
# ''
|
||||||
|
# SERVICE_NAME="org.nixos.gitea-runner-nix"
|
||||||
|
# while true; do
|
||||||
|
# # Check the second column of launchctl list output for our service
|
||||||
|
# EXIT_CODE=$(sudo launchctl list | grep "$SERVICE_NAME" | awk '{print $2}')
|
||||||
|
# if [ -z "$EXIT_CODE" ]; then
|
||||||
|
# echo "$(date): $SERVICE_NAME is running correctly. Terminating the restarter."
|
||||||
|
# exit 0
|
||||||
|
# else
|
||||||
|
# echo "$(date): $SERVICE_NAME is not running or in error state. Attempting to restart..."
|
||||||
|
# sudo launchctl bootout system/$SERVICE_NAME 2>/dev/null || true
|
||||||
|
# sudo launchctl load /Library/LaunchDaemons/$SERVICE_NAME.plist
|
||||||
|
# sleep 2 # Give the service some time to start
|
||||||
|
# fi
|
||||||
|
# done
|
||||||
|
# ''
|
||||||
|
# ];
|
||||||
|
# RunAtLoad = true;
|
||||||
|
# ThrottleInterval = 300;
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
|
||||||
|
launchd.daemons.does-anything-work = {
|
||||||
|
serviceConfig = {
|
||||||
|
ProgramArguments = ["/usr/bin/env" "bash" "-c" "date > /var/log/does-anything-work"];
|
||||||
|
RunAtLoad = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixpkgs.overlays = [(import ../nixos/overlay.nix)];
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
python-with-my-packages
|
||||||
|
emacs
|
||||||
|
alejandra
|
||||||
|
cocoapods
|
||||||
|
gitFull
|
||||||
|
just
|
||||||
|
tmux
|
||||||
|
htop
|
||||||
|
nodePackages.prettier
|
||||||
|
nodejs
|
||||||
|
ripgrep
|
||||||
|
slack
|
||||||
|
typescript
|
||||||
|
vim
|
||||||
|
yarn
|
||||||
|
];
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
|
||||||
|
# Auto upgrade nix package and the daemon service.
|
||||||
|
services.nix-daemon.enable = true;
|
||||||
|
launchd.user.envVariables.PATH = config.environment.systemPath;
|
||||||
|
|
||||||
|
programs.direnv.enable = true;
|
||||||
|
|
||||||
|
# Necessary for using flakes on this system.
|
||||||
|
nix.settings.experimental-features = "nix-command flakes";
|
||||||
|
|
||||||
|
|
||||||
|
# Set Git commit hash for darwin-version.
|
||||||
|
system.configurationRevision = self.rev or self.dirtyRev or null;
|
||||||
|
|
||||||
|
# Used for backwards compatibility, please read the changelog before changing
|
||||||
|
system.stateVersion = 4;
|
||||||
|
|
||||||
|
# The platform the configuration will be used on.
|
||||||
|
nixpkgs.hostPlatform = "aarch64-darwin";
|
||||||
|
users.users.kat.openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.kanivanKeys;
|
||||||
|
users.users.gitea-runner = {
|
||||||
|
name = "gitea-runner";
|
||||||
|
isHidden = false;
|
||||||
|
home = "/Users/gitea-runner";
|
||||||
|
createHome = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true;
|
||||||
|
|
||||||
|
users.users.kat = {
|
||||||
|
name = "kat";
|
||||||
|
home = "/Users/kat";
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.zsh = {
|
||||||
|
enable = true;
|
||||||
|
shellInit = ''
|
||||||
|
fpath+="${libDir}/functions"
|
||||||
|
for file in "${libDir}/functions/"*
|
||||||
|
do
|
||||||
|
autoload "''${file##*/}"
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
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"
|
||||||
|
|
||||||
|
autoload -Uz bracketed-paste-magic
|
||||||
|
zle -N bracketed-paste bracketed-paste-magic
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
home-manager.users.kat = {
|
||||||
|
programs.starship = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
programs.zsh.enable = true;
|
||||||
|
home.stateVersion = "24.05";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
darwinConfigurations."mac-demarco-mini" = nix-darwin.lib.darwinSystem {
|
||||||
|
modules = [
|
||||||
|
home-manager.darwinModules.home-manager
|
||||||
|
configuration
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Expose the package set, including overlays, for convenience.
|
||||||
|
darwinPackages = self.darwinConfigurations."Kats-Mac-mini".pkgs;
|
||||||
|
};
|
||||||
|
}
|
176
nix-darwin/gitea-actions-runner.nix
Normal file
176
nix-darwin/gitea-actions-runner.nix
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.services.gitea-actions-runner;
|
||||||
|
|
||||||
|
settingsFormat = pkgs.formats.yaml {};
|
||||||
|
|
||||||
|
hasDockerScheme = instance:
|
||||||
|
instance.labels == [] || any (label: hasInfix ":docker:" label) instance.labels;
|
||||||
|
wantsContainerRuntime = any hasDockerScheme (attrValues cfg.instances);
|
||||||
|
|
||||||
|
hasHostScheme = instance: any (label: hasSuffix ":host" label) instance.labels;
|
||||||
|
|
||||||
|
tokenXorTokenFile = instance:
|
||||||
|
(instance.token == null && instance.tokenFile != null)
|
||||||
|
|| (instance.token != null && instance.tokenFile == null);
|
||||||
|
in {
|
||||||
|
options.services.gitea-actions-runner = {
|
||||||
|
package = mkOption {
|
||||||
|
type = types.package;
|
||||||
|
default = pkgs.gitea-actions-runner;
|
||||||
|
defaultText = literalExpression "pkgs.gitea-actions-runner";
|
||||||
|
description = "The gitea-actions-runner package to use.";
|
||||||
|
};
|
||||||
|
|
||||||
|
user = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "gitea-runner";
|
||||||
|
description = "The user account under which the Gitea Actions Runner should run.";
|
||||||
|
};
|
||||||
|
|
||||||
|
instances = mkOption {
|
||||||
|
default = {};
|
||||||
|
description = "Gitea Actions Runner instances.";
|
||||||
|
type = types.attrsOf (types.submodule {
|
||||||
|
options = {
|
||||||
|
enable = mkEnableOption "Gitea Actions Runner instance";
|
||||||
|
|
||||||
|
name = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
example = "my-runner";
|
||||||
|
description = "The name identifying the runner instance towards the Gitea/Forgejo instance.";
|
||||||
|
};
|
||||||
|
|
||||||
|
url = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
example = "https://forge.example.com";
|
||||||
|
description = "Base URL of your Gitea/Forgejo instance.";
|
||||||
|
};
|
||||||
|
|
||||||
|
token = mkOption {
|
||||||
|
type = types.nullOr types.str;
|
||||||
|
default = null;
|
||||||
|
description = "Plain token to register at the configured Gitea/Forgejo instance.";
|
||||||
|
};
|
||||||
|
|
||||||
|
tokenFile = mkOption {
|
||||||
|
type = types.nullOr (types.either types.str types.path);
|
||||||
|
default = null;
|
||||||
|
description = "Path to a file containing the token to register at the configured Gitea/Forgejo instance.";
|
||||||
|
};
|
||||||
|
|
||||||
|
labels = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
example = ["macos:host" "x86_64:host"];
|
||||||
|
description = "Labels used to map jobs to their runtime environment.";
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = mkOption {
|
||||||
|
description = "Configuration for `act_runner daemon`.";
|
||||||
|
type = types.submodule {
|
||||||
|
freeformType = settingsFormat.type;
|
||||||
|
};
|
||||||
|
default = {};
|
||||||
|
};
|
||||||
|
|
||||||
|
hostPackages = mkOption {
|
||||||
|
type = types.listOf types.package;
|
||||||
|
default = with pkgs; [
|
||||||
|
bash
|
||||||
|
coreutils
|
||||||
|
curl
|
||||||
|
gawk
|
||||||
|
git
|
||||||
|
gnused
|
||||||
|
nodejs
|
||||||
|
wget
|
||||||
|
openssh
|
||||||
|
];
|
||||||
|
description = "List of packages available to actions when the runner is configured with a host execution label.";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
});
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf (cfg.instances != {}) {
|
||||||
|
assertions = [
|
||||||
|
{
|
||||||
|
assertion = all tokenXorTokenFile (attrValues cfg.instances);
|
||||||
|
message = "Instances of gitea-actions-runner can have `token` or `tokenFile`, not both.";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
users.users.${cfg.user} = {
|
||||||
|
name = cfg.user;
|
||||||
|
description = "Gitea Actions Runner user";
|
||||||
|
};
|
||||||
|
|
||||||
|
launchd.daemons =
|
||||||
|
(mapAttrs' (
|
||||||
|
name: instance:
|
||||||
|
nameValuePair "gitea-runner-${name}" {
|
||||||
|
serviceConfig = {
|
||||||
|
ProgramArguments = [
|
||||||
|
"/usr/bin/env"
|
||||||
|
"bash"
|
||||||
|
"-c"
|
||||||
|
''
|
||||||
|
cd /var/lib/gitea-runner/${name}
|
||||||
|
exec ${cfg.package}/bin/act_runner daemon --config ${settingsFormat.generate "config.yaml" instance.settings}
|
||||||
|
''
|
||||||
|
];
|
||||||
|
KeepAlive = true;
|
||||||
|
ThrottleInterval = 5;
|
||||||
|
SessionCreate = true;
|
||||||
|
UserName = cfg.user;
|
||||||
|
GroupName = "staff";
|
||||||
|
WorkingDirectory = "/var/lib/gitea-runner/${name}";
|
||||||
|
EnvironmentVariables = {
|
||||||
|
PATH = (lib.makeBinPath (instance.hostPackages ++ [cfg.package])) + ":/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
cfg.instances)
|
||||||
|
// (mapAttrs' (
|
||||||
|
name: instance:
|
||||||
|
nameValuePair "gitea-runner-setup-${name}"
|
||||||
|
{
|
||||||
|
serviceConfig = {
|
||||||
|
EnvironmentVariables =
|
||||||
|
{}
|
||||||
|
// optionalAttrs (instance.token != null) {
|
||||||
|
TOKEN = instance.token;
|
||||||
|
};
|
||||||
|
RunAtLoad = true;
|
||||||
|
ProgramArguments = [
|
||||||
|
"${pkgs.writeShellScript "gitea-runner-setup-${name}" ''
|
||||||
|
mkdir -p /var/lib/gitea-runner/${name}
|
||||||
|
cd /var/lib/gitea-runner/${name}
|
||||||
|
if [ ! -e "/var/lib/gitea-runner/${name}/.runner" ]; then
|
||||||
|
${cfg.package}/bin/act_runner register --no-interactive \
|
||||||
|
--instance ${escapeShellArg instance.url} \
|
||||||
|
--token "$TOKEN" \
|
||||||
|
--name ${escapeShellArg instance.name} \
|
||||||
|
--labels ${escapeShellArg (concatStringsSep "," instance.labels)} \
|
||||||
|
--config ${settingsFormat.generate "config.yaml" instance.settings}
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Start the runner
|
||||||
|
chown -R ${cfg.user} /var/lib/gitea-runner
|
||||||
|
chown -R ${cfg.user} /var/log/gitea-runner
|
||||||
|
''}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
)
|
||||||
|
cfg.instances);
|
||||||
|
};
|
||||||
|
}
|
2
nix-darwin/justfile
Normal file
2
nix-darwin/justfile
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
switch:
|
||||||
|
nix run nix-darwin -- switch --flake .#
|
@ -1,5 +1,5 @@
|
|||||||
{ config, pkgs, forEachUser, makeEnable, realUsers, ... }:
|
{ config, pkgs, forEachUser, makeEnable, realUsers, ... }:
|
||||||
makeEnable config "modules.base" true {
|
makeEnable config "myModules.base" true {
|
||||||
nixpkgs.config.permittedInsecurePackages = [
|
nixpkgs.config.permittedInsecurePackages = [
|
||||||
"openssl-1.0.2u"
|
"openssl-1.0.2u"
|
||||||
"electron-12.2.3"
|
"electron-12.2.3"
|
||||||
@ -36,8 +36,7 @@ makeEnable config "modules.base" true {
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Audio
|
# Audio
|
||||||
sound.enable = true;
|
hardware.pulseaudio.enable = false;
|
||||||
hardware.pulseaudio.enable = true;
|
|
||||||
|
|
||||||
# Bluetooth
|
# Bluetooth
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
@ -71,5 +70,5 @@ makeEnable config "modules.base" true {
|
|||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
|
||||||
home-manager.users = forEachUser (import ./home-manager.nix);
|
home-manager.users = forEachUser (import ./home-manager.nix);
|
||||||
nix.settings.trusted-users = realUsers;
|
nix.settings.trusted-users = realUsers ++ ["gitea-runner"];
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, inputs, config, makeEnable, ... }:
|
{ pkgs, inputs, config, makeEnable, ... }:
|
||||||
makeEnable config "modules.ben" true {
|
makeEnable config "myModules.ben" true {
|
||||||
home-manager.backupFileExtension = "backup"; # Add this line
|
home-manager.backupFileExtension = "backup"; # Add this line
|
||||||
home-manager.users.ben = {
|
home-manager.users.ben = {
|
||||||
programs.zsh = {
|
programs.zsh = {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{ config, lib, ... }:
|
{ config, lib, ... }:
|
||||||
with lib;
|
with lib;
|
||||||
let cfg = config.modules.cache-server;
|
let cfg = config.myModules.cache-server;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
modules.cache-server = {
|
myModules.cache-server = {
|
||||||
enable = mkEnableOption "nix cache server";
|
enable = mkEnableOption "nix cache server";
|
||||||
port = mkOption {
|
port = mkOption {
|
||||||
type = types.int;
|
type = types.int;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, config, makeEnable, ... }:
|
{ pkgs, config, makeEnable, ... }:
|
||||||
makeEnable config "modules.code" true {
|
makeEnable config "myModules.code" true {
|
||||||
programs.direnv = {
|
programs.direnv = {
|
||||||
enable = true;
|
enable = true;
|
||||||
nix-direnv.enable = true;
|
nix-direnv.enable = true;
|
||||||
|
@ -19,10 +19,13 @@
|
|||||||
./gnome.nix
|
./gnome.nix
|
||||||
./imalison.nix
|
./imalison.nix
|
||||||
./internet-computer.nix
|
./internet-computer.nix
|
||||||
|
./k3s.nix
|
||||||
./kat.nix
|
./kat.nix
|
||||||
./keybase.nix
|
./keybase.nix
|
||||||
|
./kubelet.nix
|
||||||
./nix.nix
|
./nix.nix
|
||||||
./nixified.ai.nix
|
./nixified.ai.nix
|
||||||
|
./nvidia.nix
|
||||||
./options.nix
|
./options.nix
|
||||||
./plasma.nix
|
./plasma.nix
|
||||||
./postgres.nix
|
./postgres.nix
|
||||||
@ -42,17 +45,17 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf config.features.full.enable {
|
config = lib.mkIf config.features.full.enable {
|
||||||
modules.base.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.plasma.enable = true;
|
myModules.plasma.enable = true;
|
||||||
modules.gnome.enable = false;
|
myModules.gnome.enable = false;
|
||||||
modules.xmonad.enable = true;
|
myModules.xmonad.enable = true;
|
||||||
modules.extra.enable = true;
|
myModules.extra.enable = true;
|
||||||
modules.electron.enable = true;
|
myModules.electron.enable = true;
|
||||||
modules.code.enable = true;
|
myModules.code.enable = true;
|
||||||
modules.games.enable = true;
|
myModules.games.enable = true;
|
||||||
modules.syncthing.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.fonts.enable = true;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.nixified-ai.enable = false;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, pkgs, makeEnable, ... }:
|
{ config, pkgs, makeEnable, ... }:
|
||||||
makeEnable config "modules.desktop" true {
|
makeEnable config "myModules.desktop" true {
|
||||||
imports = [
|
imports = [
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
];
|
];
|
||||||
@ -34,7 +34,7 @@ makeEnable config "modules.desktop" true {
|
|||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# Appearance
|
# Appearance
|
||||||
gnome.adwaita-icon-theme
|
adwaita-icon-theme
|
||||||
hicolor-icon-theme
|
hicolor-icon-theme
|
||||||
libsForQt5.breeze-gtk
|
libsForQt5.breeze-gtk
|
||||||
# materia-theme
|
# materia-theme
|
||||||
@ -60,8 +60,8 @@ makeEnable config "modules.desktop" true {
|
|||||||
|
|
||||||
feh
|
feh
|
||||||
firefox
|
firefox
|
||||||
gnome.cheese
|
cheese
|
||||||
gnome.gpaste
|
gpaste
|
||||||
kleopatra
|
kleopatra
|
||||||
libnotify
|
libnotify
|
||||||
libreoffice
|
libreoffice
|
||||||
@ -70,9 +70,8 @@ makeEnable config "modules.desktop" true {
|
|||||||
networkmanagerapplet
|
networkmanagerapplet
|
||||||
notify-osd-customizable
|
notify-osd-customizable
|
||||||
okular
|
okular
|
||||||
picom
|
|
||||||
pinentry
|
pinentry
|
||||||
psensor
|
mission-center
|
||||||
quassel
|
quassel
|
||||||
remmina
|
remmina
|
||||||
rofi
|
rofi
|
||||||
@ -82,7 +81,7 @@ makeEnable config "modules.desktop" true {
|
|||||||
simplescreenrecorder
|
simplescreenrecorder
|
||||||
skippy-xd
|
skippy-xd
|
||||||
synergy
|
synergy
|
||||||
transmission-gtk
|
transmission_3-gtk
|
||||||
vlc
|
vlc
|
||||||
volnoti
|
volnoti
|
||||||
xfce.thunar
|
xfce.thunar
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, config, makeEnable, forEachUser, ... }:
|
{ pkgs, config, makeEnable, forEachUser, ... }:
|
||||||
makeEnable config "modules.electron" false {
|
makeEnable config "myModules.electron" false {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
element-desktop
|
element-desktop
|
||||||
# bitwarden
|
# bitwarden
|
||||||
|
@ -34,6 +34,10 @@ with lib;
|
|||||||
eval "$(register-python-argcomplete prod-prb)"
|
eval "$(register-python-argcomplete prod-prb)"
|
||||||
eval "$(register-python-argcomplete railbird)"
|
eval "$(register-python-argcomplete railbird)"
|
||||||
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
|
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
|
||||||
|
|
||||||
|
# Enable bracketed paste
|
||||||
|
autoload -Uz bracketed-paste-magic
|
||||||
|
zle -N bracketed-paste bracketed-paste-magic
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
automake
|
automake
|
||||||
bazel
|
bazel
|
||||||
|
bento4
|
||||||
bind
|
bind
|
||||||
binutils
|
binutils
|
||||||
cachix
|
cachix
|
||||||
@ -16,13 +17,12 @@
|
|||||||
emacs
|
emacs
|
||||||
fd
|
fd
|
||||||
ffmpeg
|
ffmpeg
|
||||||
bento4
|
|
||||||
file
|
file
|
||||||
gawk
|
gawk
|
||||||
gcc
|
gcc
|
||||||
gdb
|
gdb
|
||||||
git-lfs
|
|
||||||
git-fame
|
git-fame
|
||||||
|
git-lfs
|
||||||
git-sync
|
git-sync
|
||||||
gitFull
|
gitFull
|
||||||
glxinfo
|
glxinfo
|
||||||
@ -42,6 +42,7 @@
|
|||||||
neofetch
|
neofetch
|
||||||
neovim
|
neovim
|
||||||
nix-index
|
nix-index
|
||||||
|
nix-search-cli
|
||||||
pass
|
pass
|
||||||
patchelf
|
patchelf
|
||||||
pciutils
|
pciutils
|
||||||
@ -51,8 +52,9 @@
|
|||||||
rcm
|
rcm
|
||||||
ripgrep
|
ripgrep
|
||||||
silver-searcher
|
silver-searcher
|
||||||
sysz
|
skim
|
||||||
sshfs
|
sshfs
|
||||||
|
sysz
|
||||||
tmux
|
tmux
|
||||||
tzupdate
|
tzupdate
|
||||||
udiskie
|
udiskie
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, pkgs, makeEnable, ... }:
|
{ config, pkgs, makeEnable, ... }:
|
||||||
makeEnable config "modules.extra" false {
|
makeEnable config "myModules.extra" false {
|
||||||
services.expressvpn.enable = true;
|
services.expressvpn.enable = true;
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
|
|
||||||
|
390
nixos/flake.lock
390
nixos/flake.lock
@ -8,11 +8,11 @@
|
|||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715290355,
|
"lastModified": 1723293904,
|
||||||
"narHash": "sha256-2T7CHTqBXJJ3ZC6R/4TXTcKoXWHcvubKNj9SfomURnw=",
|
"narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=",
|
||||||
"owner": "ryantm",
|
"owner": "ryantm",
|
||||||
"repo": "agenix",
|
"repo": "agenix",
|
||||||
"rev": "8d37c5bdeade12b6479c85acd133063ab53187a0",
|
"rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -93,11 +93,11 @@
|
|||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673956053,
|
"lastModified": 1696426674,
|
||||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -162,11 +162,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712014858,
|
"lastModified": 1719994518,
|
||||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -217,6 +217,45 @@
|
|||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-parts_4": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701473968,
|
||||||
|
"narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-parts_5": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"nixtheplanet",
|
||||||
|
"hercules-ci-effects",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1696343447,
|
||||||
|
"narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "flake-parts",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": [
|
"systems": [
|
||||||
@ -224,11 +263,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1710146030,
|
"lastModified": 1726560853,
|
||||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -238,12 +277,15 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_2": {
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems_2"
|
||||||
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1667395993,
|
"lastModified": 1726560853,
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -253,24 +295,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"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"
|
||||||
},
|
},
|
||||||
@ -288,7 +312,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_5": {
|
"flake-utils_4": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_5"
|
"systems": "systems_5"
|
||||||
},
|
},
|
||||||
@ -306,7 +330,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_6": {
|
"flake-utils_5": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_7"
|
"systems": "systems_7"
|
||||||
},
|
},
|
||||||
@ -324,7 +348,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_7": {
|
"flake-utils_6": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_8"
|
"systems": "systems_8"
|
||||||
},
|
},
|
||||||
@ -390,6 +414,37 @@
|
|||||||
"url": "https://hackage.haskell.org/package/fourmolu-0.12.0.0/fourmolu-0.12.0.0.tar.gz"
|
"url": "https://hackage.haskell.org/package/fourmolu-0.12.0.0/fourmolu-0.12.0.0.tar.gz"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"git-hooks-nix": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": [
|
||||||
|
"nix"
|
||||||
|
],
|
||||||
|
"gitignore": [
|
||||||
|
"nix"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nixpkgs-stable": [
|
||||||
|
"nix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1721042469,
|
||||||
|
"narHash": "sha256-6FPUl7HVtvRHCCBQne7Ylp4p+dpP3P/OYuzjztZ4s70=",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"rev": "f451c19376071a90d8c58ab1a953c6e9840527fd",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "git-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"git-ignore-nix": {
|
"git-ignore-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@ -566,7 +621,7 @@
|
|||||||
"haskell-language-server": {
|
"haskell-language-server": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_3",
|
"flake-compat": "flake-compat_3",
|
||||||
"flake-utils": "flake-utils_4",
|
"flake-utils": "flake-utils_3",
|
||||||
"fourmolu-011": "fourmolu-011",
|
"fourmolu-011": "fourmolu-011",
|
||||||
"fourmolu-012": "fourmolu-012",
|
"fourmolu-012": "fourmolu-012",
|
||||||
"gitignore": "gitignore",
|
"gitignore": "gitignore",
|
||||||
@ -578,7 +633,7 @@
|
|||||||
"lsp": "lsp",
|
"lsp": "lsp",
|
||||||
"lsp-test": "lsp-test",
|
"lsp-test": "lsp-test",
|
||||||
"lsp-types": "lsp-types",
|
"lsp-types": "lsp-types",
|
||||||
"nixpkgs": "nixpkgs_6",
|
"nixpkgs": "nixpkgs_8",
|
||||||
"ormolu-052": "ormolu-052",
|
"ormolu-052": "ormolu-052",
|
||||||
"ormolu-07": "ormolu-07",
|
"ormolu-07": "ormolu-07",
|
||||||
"stylish-haskell-0145": "stylish-haskell-0145"
|
"stylish-haskell-0145": "stylish-haskell-0145"
|
||||||
@ -601,7 +656,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_6",
|
"flake-utils": "flake-utils_5",
|
||||||
"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",
|
||||||
@ -613,7 +668,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_8",
|
"nixpkgs": "nixpkgs_10",
|
||||||
"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"
|
||||||
@ -655,6 +710,25 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hercules-ci-effects_2": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_5",
|
||||||
|
"nixpkgs": "nixpkgs_6"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1701009247,
|
||||||
|
"narHash": "sha256-GuX16rzRze2y7CsewJLTV6qXkXWyEwp6VCZXi8HLruU=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"rev": "31b6cd7569191bfcd0a548575b0e2ef953ed7d09",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "hercules-ci-effects",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hiedb": {
|
"hiedb": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@ -765,11 +839,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715380449,
|
"lastModified": 1727381010,
|
||||||
"narHash": "sha256-716+f9Rj3wjSyD1xitCv2FcYbgPz1WIVDj+ZBclH99Y=",
|
"narHash": "sha256-2PqUwnZXjYiPUm5A4d8Z31mvLS4lvUeV/9gUhSMmNR4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "d7682620185f213df384c363288093b486b2883f",
|
"rev": "853e7bd24f875bac2e3a0cf72f993e917d0f8cf5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -846,15 +920,16 @@
|
|||||||
"libgit2": {
|
"libgit2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1697646580,
|
"lastModified": 1715853528,
|
||||||
"narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=",
|
"narHash": "sha256-J2rCxTecyLbbDdsyBWn9w7r3pbKRMkI9E7RvRgAqBdY=",
|
||||||
"owner": "libgit2",
|
"owner": "libgit2",
|
||||||
"repo": "libgit2",
|
"repo": "libgit2",
|
||||||
"rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5",
|
"rev": "36f7e21ad757a3dacc58cf7944329da6bc1d6e96",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "libgit2",
|
"owner": "libgit2",
|
||||||
|
"ref": "v1.8.1",
|
||||||
"repo": "libgit2",
|
"repo": "libgit2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -935,17 +1010,18 @@
|
|||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
|
"git-hooks-nix": "git-hooks-nix",
|
||||||
"libgit2": "libgit2",
|
"libgit2": "libgit2",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-regression": "nixpkgs-regression",
|
"nixpkgs-23-11": "nixpkgs-23-11",
|
||||||
"pre-commit-hooks": "pre-commit-hooks"
|
"nixpkgs-regression": "nixpkgs-regression"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715361977,
|
"lastModified": 1727380702,
|
||||||
"narHash": "sha256-j/PLYYGs+Gjge4JGYxMjOhWQEp+GB4Fdicetbpmp6n0=",
|
"narHash": "sha256-1YUAqvZc9YOUERyPiaOGYEg2fIf20+yIWGhzB0Ke6j8=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nix",
|
"repo": "nix",
|
||||||
"rev": "87ab3c0ea4e6f85e7b902050365bb75cf2836fbb",
|
"rev": "0ed67e5b7ee9ad8fae162e1b10b25d22ada2b1f3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -977,15 +1053,16 @@
|
|||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1707802617,
|
"lastModified": 1719989395,
|
||||||
"narHash": "sha256-29HCocTg8aPr6gaY6VHNxJQpZQJ6GAqjFsKPqNFj5qo=",
|
"narHash": "sha256-AppMOCCJ6LYteg4mvlf0xQV+cc9a4iehRWxTOHewouA=",
|
||||||
"owner": "colonelpanic8",
|
"owner": "colonelpanic8",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "cb96be8513e2959110c7f90ae5d61ca5aff35862",
|
"rev": "a91e03ef13614285d5d476fbf2f096ce65de0a71",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "colonelpanic8",
|
"owner": "colonelpanic8",
|
||||||
|
"ref": "add-g834jzr",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -993,15 +1070,15 @@
|
|||||||
"nixos-wsl": {
|
"nixos-wsl": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat_2",
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": "nixpkgs_4"
|
"nixpkgs": "nixpkgs_4"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715237610,
|
"lastModified": 1727091786,
|
||||||
"narHash": "sha256-/ZeWQ4mL3DfHsbTZYc80qMrL4vBfENP0RiGv2KrCrEo=",
|
"narHash": "sha256-n36Vtdtx7tTTKFI9aoWxdNIlJ2dwxoitFDwcPXrS+Jk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "NixOS-WSL",
|
"repo": "NixOS-WSL",
|
||||||
"rev": "61fe33f4194bbbc48c090a2e79f4eb61b47c9b75",
|
"rev": "1fcec53c692c15091ca5bb9eaf86a2cac6c53278",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -1026,6 +1103,40 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs-23-11": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1717159533,
|
||||||
|
"narHash": "sha256-oamiKNfr2MS6yH64rUn99mIZjc45nGJlj9eGth/3Xuw=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "a62e6edd6d5e1fa0329b8653c801147986f8d446",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs-lib": {
|
||||||
|
"locked": {
|
||||||
|
"dir": "lib",
|
||||||
|
"lastModified": 1701253981,
|
||||||
|
"narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "lib",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs-regression": {
|
"nixpkgs-regression": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1643052045,
|
"lastModified": 1643052045,
|
||||||
@ -1042,33 +1153,48 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-regression_2": {
|
"nixpkgs_10": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715484633,
|
"lastModified": 1686874404,
|
||||||
"narHash": "sha256-Es5etYksi9VsAZSBKZe4rdyi9L000MEx9lFb3TF6Eo8=",
|
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "25e9a6d07dd142bafd94603208a59c107e8f2905",
|
"rev": "efc10371d5c5b8d2d58bab6c1100753efacfe550",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
|
"ref": "haskell-updates",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_11": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709083642,
|
"lastModified": 1682134069,
|
||||||
"narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=",
|
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b550fe4b4776908ac2a861124307045f8e717c8e",
|
"rev": "fd901ef4bf93499374c5af385b2943f5801c0833",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"id": "nixpkgs",
|
||||||
|
"type": "indirect"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1723688146,
|
||||||
|
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "release-23.11",
|
"ref": "nixos-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -1091,27 +1217,27 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1714782413,
|
"lastModified": 1726838390,
|
||||||
"narHash": "sha256-tbg0MEuKaPcUrnmGCu4xiY5F+7LW2+ECPKVAJd2HLwM=",
|
"narHash": "sha256-NmcVhGElxDbmEWzgXsyAjlRhUus/nEqPC5So7BOJLUM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "651b4702e27a388f0f18e1b970534162dec09aff",
|
"rev": "944b2aea7f0a2d7c79f72468106bc5510cbf5101",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixos-23.11",
|
"ref": "nixos-24.05",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715266358,
|
"lastModified": 1727122398,
|
||||||
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
|
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f1010e0469db743d14519a1efd37e23f8513d714",
|
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -1123,31 +1249,31 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_6": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1686874404,
|
"lastModified": 1697723726,
|
||||||
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
|
"narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "efc10371d5c5b8d2d58bab6c1100753efacfe550",
|
"rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "haskell-updates",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_7": {
|
"nixpkgs_7": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709703039,
|
"lastModified": 1703255338,
|
||||||
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
|
"narHash": "sha256-Z6wfYJQKmDN9xciTwU3cOiOk+NElxdZwy/FiHctCzjU=",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
|
"rev": "6df37dc6a77654682fe9f071c62b4242b5342e04",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"ref": "nixos-unstable",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
@ -1171,16 +1297,39 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_9": {
|
"nixpkgs_9": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1682134069,
|
"lastModified": 1709703039,
|
||||||
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
|
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "fd901ef4bf93499374c5af385b2943f5801c0833",
|
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"id": "nixpkgs",
|
"owner": "NixOS",
|
||||||
"type": "indirect"
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixtheplanet": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": "flake-parts_4",
|
||||||
|
"hercules-ci-effects": "hercules-ci-effects_2",
|
||||||
|
"nixpkgs": "nixpkgs_7",
|
||||||
|
"osx-kvm": "osx-kvm"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1727105240,
|
||||||
|
"narHash": "sha256-FEuqbcZ4TDUMwCpTA/E3J5L7pLD4U+zXPnZbmXSmaJo=",
|
||||||
|
"owner": "matthewcroughan",
|
||||||
|
"repo": "nixtheplanet",
|
||||||
|
"rev": "2f622af217807da78e44a5a15f620743dac57f46",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "matthewcroughan",
|
||||||
|
"repo": "nixtheplanet",
|
||||||
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notifications-tray-icon": {
|
"notifications-tray-icon": {
|
||||||
@ -1258,50 +1407,34 @@
|
|||||||
"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": {
|
"osx-kvm": {
|
||||||
"inputs": {
|
"flake": false,
|
||||||
"flake-compat": [
|
|
||||||
"nix"
|
|
||||||
],
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"gitignore": [
|
|
||||||
"nix"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"nix",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixpkgs-stable": [
|
|
||||||
"nix",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1712897695,
|
"lastModified": 1701316418,
|
||||||
"narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=",
|
"narHash": "sha256-Sk8LYhFovoMX1ln7DWYArJQphW2a4h8Xg7/ZEZXwZv4=",
|
||||||
"owner": "cachix",
|
"owner": "kholia",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "OSX-KVM",
|
||||||
"rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8",
|
"rev": "09daff670a7eb9ff616073df329586c5995623a9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "cachix",
|
"owner": "kholia",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "OSX-KVM",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"railbird-secrets": {
|
"railbird-secrets": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"agenix": "agenix_2",
|
"agenix": "agenix_2",
|
||||||
"flake-utils": "flake-utils_5",
|
"flake-utils": "flake-utils_4",
|
||||||
"nixpkgs": "nixpkgs_7"
|
"nixpkgs": "nixpkgs_9"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1718069159,
|
"lastModified": 1726075726,
|
||||||
"narHash": "sha256-L66mczMl8BPLwZrTVKrXMZRyxHiPvA3CHywbsQyFHW0=",
|
"narHash": "sha256-eQPDAzUJg8fwqiCyWsKxtHV+G1LGJKs9X3ZtOzytuDE=",
|
||||||
"ref": "refs/heads/master",
|
"ref": "refs/heads/master",
|
||||||
"rev": "609f1d32fd1112068d97df0f7d4de82cec878002",
|
"rev": "70d8ffd3f3b79b97477ae0655524273bb098b6c5",
|
||||||
"revCount": 52,
|
"revCount": 86,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
|
||||||
},
|
},
|
||||||
@ -1324,7 +1457,7 @@
|
|||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixos-wsl": "nixos-wsl",
|
"nixos-wsl": "nixos-wsl",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_5",
|
||||||
"nixpkgs-regression": "nixpkgs-regression_2",
|
"nixtheplanet": "nixtheplanet",
|
||||||
"notifications-tray-icon": "notifications-tray-icon",
|
"notifications-tray-icon": "notifications-tray-icon",
|
||||||
"railbird-secrets": "railbird-secrets",
|
"railbird-secrets": "railbird-secrets",
|
||||||
"status-notifier-item": "status-notifier-item",
|
"status-notifier-item": "status-notifier-item",
|
||||||
@ -1567,6 +1700,7 @@
|
|||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "taffybar",
|
"owner": "taffybar",
|
||||||
|
"ref": "old-master",
|
||||||
"repo": "taffybar",
|
"repo": "taffybar",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
@ -1590,11 +1724,11 @@
|
|||||||
},
|
},
|
||||||
"unstable": {
|
"unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1715266358,
|
"lastModified": 1727122398,
|
||||||
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
|
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f1010e0469db743d14519a1efd37e23f8513d714",
|
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -1606,8 +1740,8 @@
|
|||||||
},
|
},
|
||||||
"vscode-server": {
|
"vscode-server": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_7",
|
"flake-utils": "flake-utils_6",
|
||||||
"nixpkgs": "nixpkgs_9"
|
"nixpkgs": "nixpkgs_11"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1713958148,
|
"lastModified": 1713958148,
|
||||||
@ -1637,11 +1771,11 @@
|
|||||||
"unstable": "unstable"
|
"unstable": "unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1714229485,
|
"lastModified": 1726451364,
|
||||||
"narHash": "sha256-AOy87dJL0T9wSe1kM0tTzFlV++JwmoGW4BfBXzIUbsI=",
|
"narHash": "sha256-6WKgYq0+IzPSXxVl1MfODIVwEbd3Sw0zc5sMSOyzA8I=",
|
||||||
"owner": "xmonad",
|
"owner": "xmonad",
|
||||||
"repo": "xmonad",
|
"repo": "xmonad",
|
||||||
"rev": "cde1a25bca9b7aeeb24af73588221f5f54ae770b",
|
"rev": "a4140b93497333ec7f3127ee4dabcb8ae8a721b6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
{
|
{
|
||||||
inputs = {
|
inputs = {
|
||||||
|
nixtheplanet.url = "github:matthewcroughan/nixtheplanet";
|
||||||
railbird-secrets = {
|
railbird-secrets = {
|
||||||
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
|
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/add-g834jzr"; };
|
||||||
|
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
url = "github:NixOS/nixpkgs/nixos-unstable";
|
url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
@ -34,7 +35,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
taffybar = {
|
taffybar = {
|
||||||
url = "github:taffybar/taffybar";
|
url = "github:taffybar/taffybar/old-master";
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.follows = "nixpkgs";
|
nixpkgs.follows = "nixpkgs";
|
||||||
flake-utils.follows = "flake-utils";
|
flake-utils.follows = "flake-utils";
|
||||||
@ -104,8 +105,6 @@
|
|||||||
|
|
||||||
vscode-server.url = "github:nix-community/nixos-vscode-server";
|
vscode-server.url = "github:nix-community/nixos-vscode-server";
|
||||||
|
|
||||||
nixpkgs-regression = { url = "github:NixOS/nixpkgs"; };
|
|
||||||
|
|
||||||
nixified-ai = { url = "github:nixified-ai/flake"; };
|
nixified-ai = { url = "github:nixified-ai/flake"; };
|
||||||
|
|
||||||
nixos-wsl = { url = "github:nix-community/NixOS-WSL"; };
|
nixos-wsl = { url = "github:nix-community/NixOS-WSL"; };
|
||||||
@ -114,7 +113,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs@{
|
outputs = inputs@{
|
||||||
self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad,
|
self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad, nixtheplanet,
|
||||||
xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ...
|
xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ...
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
@ -126,7 +125,7 @@
|
|||||||
name = machineNameFromFilename filename;
|
name = machineNameFromFilename filename;
|
||||||
value = {
|
value = {
|
||||||
modules = [
|
modules = [
|
||||||
(machinesFilepath + ("/" + filename)) agenix.nixosModules.default
|
(machinesFilepath + ("/" + filename)) agenix.nixosModules.default nixtheplanet.nixosModules.macos-ventura
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, makeEnable, config, ... }:
|
{ pkgs, makeEnable, config, ... }:
|
||||||
makeEnable config "modules.fonts" true {
|
makeEnable config "myModules.fonts" true {
|
||||||
# Enable the gtk icon cache
|
# Enable the gtk icon cache
|
||||||
gtk.iconCache.enable = true;
|
gtk.iconCache.enable = true;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, pkgs, makeEnable, ... }:
|
{ config, pkgs, makeEnable, ... }:
|
||||||
makeEnable config "modules.games" false {
|
makeEnable config "myModules.games" false {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
steam
|
steam
|
||||||
# heroic
|
# heroic
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{ pkgs, config, makeEnable, ... }:
|
{ pkgs, config, makeEnable, ... }:
|
||||||
makeEnable config "modules.gitea-runner" false {
|
makeEnable config "myModules.gitea-runner" false {
|
||||||
age.secrets.gitea-runner-token = {
|
age.secrets.gitea-runner-token = {
|
||||||
file = ./secrets/gitea-runner-token.${config.networking.hostName}.age;
|
file = ./secrets/gitea-runner-token.age;
|
||||||
group = "docker";
|
group = "docker";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, makeEnable, ... }:
|
{ config, makeEnable, ... }:
|
||||||
makeEnable config "modules.gitea" false {
|
makeEnable config "myModules.gitea" false {
|
||||||
|
|
||||||
services.gitea = {
|
services.gitea = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -13,6 +13,7 @@ makeEnable config "modules.gitea" false {
|
|||||||
SSH_PORT = 1123;
|
SSH_PORT = 1123;
|
||||||
HTTP_PORT = 3001;
|
HTTP_PORT = 3001;
|
||||||
ROOT_URL = "https://dev.railbird.ai";
|
ROOT_URL = "https://dev.railbird.ai";
|
||||||
|
DISABLE_REGISTRATION = true;
|
||||||
};
|
};
|
||||||
settings.actions = {
|
settings.actions = {
|
||||||
ENABLED = true;
|
ENABLED = true;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, makeEnable, ... }:
|
{ config, makeEnable, ... }:
|
||||||
makeEnable config "modules.gnome" false {
|
makeEnable config "myModules.gnome" false {
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
desktopManager.gnome.enable = true;
|
desktopManager.gnome.enable = true;
|
||||||
displayManager.gdm.enable = true;
|
displayManager.gdm.enable = true;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ pkgs, config, specialArgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
xsession = {
|
xsession = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
96
nixos/k3s.nix
Normal file
96
nixos/k3s.nix
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
with lib; let
|
||||||
|
cfg = config.myModules.railbird-k3s;
|
||||||
|
mount-path = "/var/lib/railbird/bucket";
|
||||||
|
bucket-name = "railbird-dev-videos";
|
||||||
|
in {
|
||||||
|
options = {
|
||||||
|
myModules.railbird-k3s = {
|
||||||
|
enable = mkEnableOption "railbird k3s";
|
||||||
|
serverAddr = mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
default = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
age.secrets."1896Folsom-k3s-token.age".file = ./secrets/1896Folsom-k3s-token.age;
|
||||||
|
age.secrets."k3s-registry.yaml.age".file = ./secrets/k3s-registry.yaml.age;
|
||||||
|
age.secrets.api-service-key = {
|
||||||
|
file = ./secrets/api_service_account_key.json.age;
|
||||||
|
owner = "railbird";
|
||||||
|
group = "users";
|
||||||
|
};
|
||||||
|
environment.etc."rancher/k3s/registries.yaml".source = config.age.secrets."k3s-registry.yaml.age".path;
|
||||||
|
services.dockerRegistry = {
|
||||||
|
enable = true;
|
||||||
|
listenAddress = "0.0.0.0";
|
||||||
|
port = 5279;
|
||||||
|
enableDelete = true;
|
||||||
|
enableGarbageCollect = true;
|
||||||
|
};
|
||||||
|
systemd.services.mount-railbird-bucket = {
|
||||||
|
after = ["agenix.service"];
|
||||||
|
description = "Mount railbird bucket";
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
RemainAfterExit = true;
|
||||||
|
ExecStartPre = [
|
||||||
|
"-${pkgs.util-linux}/bin/umount -f ${mount-path}"
|
||||||
|
"${pkgs.coreutils}/bin/mkdir -p ${mount-path}"
|
||||||
|
"${pkgs.coreutils}/bin/chown railbird:users ${mount-path}"
|
||||||
|
"${pkgs.coreutils}/bin/chmod 0775 ${mount-path}"
|
||||||
|
];
|
||||||
|
ExecStart = "${pkgs.gcsfuse}/bin/gcsfuse --implicit-dirs --key-file ${config.age.secrets.api-service-key.path} ${bucket-name} ${mount-path}";
|
||||||
|
User = "root";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.k3s = {
|
||||||
|
enable = true;
|
||||||
|
clusterInit = cfg.serverAddr == "";
|
||||||
|
serverAddr = cfg.serverAddr;
|
||||||
|
configPath = pkgs.writeTextFile {
|
||||||
|
name = "k3s-config.yaml";
|
||||||
|
text = ''
|
||||||
|
kubelet-arg:
|
||||||
|
- "eviction-hard=nodefs.available<2Gi"
|
||||||
|
- "eviction-soft=nodefs.available<5Gi"
|
||||||
|
- "eviction-soft-grace-period=nodefs.available=5m"
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
tokenFile = config.age.secrets."1896Folsom-k3s-token.age".path;
|
||||||
|
extraFlags = [
|
||||||
|
"--tls-san ryzen-shine.local"
|
||||||
|
"--tls-san nixquick.local"
|
||||||
|
"--tls-san biskcomp.local"
|
||||||
|
"--tls-san jimi-hendnix.local"
|
||||||
|
"--tls-san dev.railbird.ai"
|
||||||
|
"--node-label nixos-nvidia-cdi=enabled"
|
||||||
|
];
|
||||||
|
containerdConfigTemplate = ''
|
||||||
|
{{ template "base" . }}
|
||||||
|
|
||||||
|
[plugins]
|
||||||
|
"io.containerd.grpc.v1.cri".enable_cdi = true
|
||||||
|
|
||||||
|
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia]
|
||||||
|
privileged_without_host_devices = false
|
||||||
|
runtime_engine = ""
|
||||||
|
runtime_root = ""
|
||||||
|
runtime_type = "io.containerd.runc.v2"
|
||||||
|
|
||||||
|
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia.options]
|
||||||
|
BinaryName = "/run/current-system/sw/bin/nvidia-container-runtime"
|
||||||
|
'';
|
||||||
|
gracefulNodeShutdown = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -1,10 +1,11 @@
|
|||||||
{ pkgs, inputs, config, makeEnable, ... }:
|
{ pkgs, inputs, config, makeEnable, ... }:
|
||||||
makeEnable config "modules.kat" false {
|
makeEnable config "myModules.kat" false {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
bitwarden
|
bitwarden
|
||||||
obsidian
|
obsidian
|
||||||
obs-studio
|
obs-studio
|
||||||
ffmpeg
|
ffmpeg
|
||||||
|
code-cursor
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.extraInit = ''
|
environment.extraInit = ''
|
||||||
|
@ -23,6 +23,7 @@ rec {
|
|||||||
"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@strixi-minaj"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFrOYD3ReFc2+xFUylBFHREcm1lO7BRJGW5JrOoY3I8s ivanm@strixi-minaj"
|
||||||
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINYy93265G59aA1ksckjqlfeHq0vpEpzC8BwqCrpeXdh kat@Kats-Mac-mini.local"
|
||||||
];
|
];
|
||||||
deanKeys = [
|
deanKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
|
||||||
@ -55,4 +56,6 @@ rec {
|
|||||||
benKeys = [
|
benKeys = [
|
||||||
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
|
||||||
];
|
];
|
||||||
|
interviewKeys = [
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
23
nixos/kubelet-client.crt
Normal file
23
nixos/kubelet-client.crt
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDyTCCAjGgAwIBAgIRAMQBZiVjA5BGSkDldScI9cMwDQYJKoZIhvcNAQELBQAw
|
||||||
|
LzEtMCsGA1UEAxMkM2I2N2M2NzgtNzI5My00YTIzLTg3ZWItY2NiMTZjYWFkMzFm
|
||||||
|
MB4XDTI0MDkyOTIwNTAzNloXDTI5MDkyODIwNTIzNlowOTEVMBMGA1UEChMMc3lz
|
||||||
|
dGVtOm5vZGVzMSAwHgYDVQQDExdzeXN0ZW06bm9kZTpyeXplbi1zaGluZTCCASIw
|
||||||
|
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANIOfbq05IIdgX2jXYLaEt66rkXp
|
||||||
|
NlqPNfh6v9nL1Aw6PSM3DEIWXVko8AyduRF4kXNO6xc6l/Rzk03w3qSvJpWpALGD
|
||||||
|
JjslgRL4VJWUC6/QydsCO9io7SoUEmXFtDcsW6DftFejosr+56ZnVFrz5MMzfUAL
|
||||||
|
Ix6n83NJvXZ8f9oHSX8TFW34ZClLxDq2fprFIs+D2QlFRE50Jr/Q8gPI2OSQDUBW
|
||||||
|
DFdQrjt81bLs6doQipUqvHb4/Ms49agHek1ceWIMf+KZWoao5KNQTBe6XL2BUgA/
|
||||||
|
MS3ZvQppDDTygA0QkgdtOJyG2lsrAmd7LEXTr9ilsqLV3YQMMKhCifwINa0CAwEA
|
||||||
|
AaNWMFQwDgYDVR0PAQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMCMAwGA1Ud
|
||||||
|
EwEB/wQCMAAwHwYDVR0jBBgwFoAUjvcbOeZ4QIk53EkATOaOFiAZUq0wDQYJKoZI
|
||||||
|
hvcNAQELBQADggGBAELWgmdmg9TKjDDqmF6pYr1j43gZYclXW4sB509itSiIeltX
|
||||||
|
Isrvn5R5ok0W5Jcl+7QMhpntqIKJi26OqbcdBhqlaVURkBkbrx8aegkWJfPO+Fzz
|
||||||
|
NyyiIpk7KQzGy6N5//jfMPZtJfQEQZwMenW0cj7F0QHOdVZy90+JNr2P3uV3Ad7u
|
||||||
|
WZuYpbOFjOeQg1hJsX8wEU4KJyptn/kXhM+CqAnQ4S+k2wpjECD8KpWKAmpJWZg0
|
||||||
|
RaBPyHZSmWnbXqs4LU6ERaZJxZQG0ODuA18DmGfaAkUUUvE2J0ploc2Y8Xl4zUWW
|
||||||
|
Ivwslyx30YO3J9qI30d9tTQw/A0vHCoDNDbCg7lorZqP3TiTG9ANLndPqqg6inYU
|
||||||
|
yfj612//JrO8w/4qh7cxR03P35aK0paLC74FaKLtZ5CwPK3BAW/0Zhv5fH4io6hE
|
||||||
|
rfJmcjhbKD0Cwr9Dn6wVFz/a33H+0vMohHrVlDk4bSDIymbuJcZpYgR8n5WNQbGu
|
||||||
|
nwjiLXCnVxcVjkcj2w==
|
||||||
|
-----END CERTIFICATE-----
|
22
nixos/kubelet.nix
Normal file
22
nixos/kubelet.nix
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{ config, pkgs, makeEnable, ... }:
|
||||||
|
makeEnable config "myModules.kubelet" false {
|
||||||
|
age.secrets."api_service_account_key.json.age".file = ./secrets/api_service_account_key.json.age;
|
||||||
|
services.kubernetes.kubelet = {
|
||||||
|
enable = true;
|
||||||
|
kubeconfig = {
|
||||||
|
server = "https://34.31.205.230";
|
||||||
|
caFile = ./railbird-kubernetes.crt;
|
||||||
|
certFile = ./kubelet-client.crt;
|
||||||
|
keyFile = config.age.secrets."api_service_account_key.json.age".path;
|
||||||
|
};
|
||||||
|
registerNode = true;
|
||||||
|
cni = {
|
||||||
|
packages = [ pkgs.cni-plugins pkgs.calico-cni-plugin ];
|
||||||
|
};
|
||||||
|
extraOpts = ''
|
||||||
|
--fail-swap-on=false
|
||||||
|
# --container-runtime=remote
|
||||||
|
# --container-runtime-endpoint=unix:///run/containerd/containerd.sock
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}
|
@ -6,16 +6,16 @@
|
|||||||
inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia
|
inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.base.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.xmonad.enable = true;
|
myModules.xmonad.enable = true;
|
||||||
modules.extra.enable = false;
|
myModules.extra.enable = false;
|
||||||
modules.code.enable = true;
|
myModules.code.enable = true;
|
||||||
modules.games.enable = false;
|
myModules.games.enable = false;
|
||||||
modules.syncthing.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.fonts.enable = true;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.nixified-ai.enable = false;
|
||||||
modules.gitea-runner.enable = false;
|
myModules.gitea-runner.enable = false;
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
|
||||||
|
@ -8,10 +8,10 @@
|
|||||||
sublime
|
sublime
|
||||||
vlc
|
vlc
|
||||||
];
|
];
|
||||||
modules.desktop.enable = false;
|
myModules.desktop.enable = false;
|
||||||
modules.plasma.enable = false;
|
myModules.plasma.enable = false;
|
||||||
imalison.nixOverlay.enable = false;
|
imalison.nixOverlay.enable = false;
|
||||||
modules.wsl.enable = true;
|
myModules.wsl.enable = true;
|
||||||
|
|
||||||
networking.hostName = "bencbox";
|
networking.hostName = "bencbox";
|
||||||
|
|
||||||
|
@ -13,25 +13,31 @@ in
|
|||||||
extraGroups = ["syncthing"];
|
extraGroups = ["syncthing"];
|
||||||
};
|
};
|
||||||
|
|
||||||
modules.raspberry-pi.enable = true;
|
myModules.raspberry-pi.enable = true;
|
||||||
|
|
||||||
modules.base.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.xmonad.enable = false;
|
myModules.xmonad.enable = false;
|
||||||
modules.extra.enable = false;
|
myModules.extra.enable = false;
|
||||||
modules.code.enable = true;
|
myModules.code.enable = true;
|
||||||
modules.games.enable = false;
|
myModules.games.enable = false;
|
||||||
modules.syncthing.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.fonts.enable = true;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.nixified-ai.enable = false;
|
||||||
modules.cache-server = {
|
myModules.cache-server = {
|
||||||
enable = false;
|
enable = false;
|
||||||
host-string = biskcomp-nginx-hostnames;
|
host-string = biskcomp-nginx-hostnames;
|
||||||
port = 80;
|
port = 80;
|
||||||
path = "/nix-cache";
|
path = "/nix-cache";
|
||||||
};
|
};
|
||||||
modules.gitea.enable = true;
|
myModules.gitea.enable = true;
|
||||||
modules.gitea-runner.enable = false;
|
myModules.gitea-runner.enable = false;
|
||||||
|
|
||||||
|
myModules.railbird-k3s = {
|
||||||
|
enable = true;
|
||||||
|
serverAddr = "https://dev.railbird.ai:6443";
|
||||||
|
};
|
||||||
|
services.k3s.disableAgent = true;
|
||||||
|
|
||||||
services.vaultwarden = {
|
services.vaultwarden = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -85,6 +91,16 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
"docs.railbird.ai" = {
|
||||||
|
enableACME = true;
|
||||||
|
forceSSL = true;
|
||||||
|
root = "/var/lib/syncthing/railbird/docs";
|
||||||
|
locations."/" = {
|
||||||
|
extraConfig = ''
|
||||||
|
autoindex on;
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -5,15 +5,15 @@
|
|||||||
../configuration.nix
|
../configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.base.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.xmonad.enable = false;
|
myModules.xmonad.enable = false;
|
||||||
modules.extra.enable = false;
|
myModules.extra.enable = false;
|
||||||
modules.code.enable = true;
|
myModules.code.enable = true;
|
||||||
modules.games.enable = false;
|
myModules.games.enable = false;
|
||||||
modules.syncthing.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.fonts.enable = true;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.nixified-ai.enable = false;
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
|
||||||
|
@ -5,10 +5,10 @@
|
|||||||
];
|
];
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
environment.systemPackages = with pkgs; [sublime];
|
environment.systemPackages = with pkgs; [sublime];
|
||||||
modules.desktop.enable = false;
|
myModules.desktop.enable = false;
|
||||||
modules.plasma.enable = false;
|
myModules.plasma.enable = false;
|
||||||
imalison.nixOverlay.enable = false;
|
imalison.nixOverlay.enable = false;
|
||||||
modules.wsl.enable = true;
|
myModules.wsl.enable = true;
|
||||||
|
|
||||||
networking.hostName = "dean-zephyrus";
|
networking.hostName = "dean-zephyrus";
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
imalison.nixOverlay.enable = false;
|
imalison.nixOverlay.enable = false;
|
||||||
modules.wsl.enable = true;
|
myModules.wsl.enable = true;
|
||||||
|
|
||||||
networking.hostName = "jay-lenovo-wsl";
|
networking.hostName = "jay-lenovo-wsl";
|
||||||
|
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
android-studio
|
android-studio
|
||||||
linuxPackages_latest.perf
|
linuxPackages_latest.perf
|
||||||
zenmonitor
|
zenmonitor
|
||||||
|
code-cursor
|
||||||
];
|
];
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
@ -26,7 +27,7 @@
|
|||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
modules.postgres.enable = true;
|
myModules.postgres.enable = true;
|
||||||
|
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
@ -5,23 +5,24 @@
|
|||||||
../configuration.nix
|
../configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.base.enable = true;
|
myModules.railbird-k3s = {
|
||||||
modules.desktop.enable = true;
|
enable = true;
|
||||||
modules.xmonad.enable = true;
|
serverAddr = "https://ryzen-shine.local:6443";
|
||||||
modules.extra.enable = false;
|
};
|
||||||
modules.code.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.games.enable = false;
|
myModules.desktop.enable = true;
|
||||||
modules.syncthing.enable = true;
|
myModules.xmonad.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.extra.enable = false;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.code.enable = true;
|
||||||
modules.gitea-runner.enable = true;
|
myModules.games.enable = false;
|
||||||
modules.postgres.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
|
myModules.fonts.enable = true;
|
||||||
|
myModules.nixified-ai.enable = false;
|
||||||
|
myModules.gitea-runner.enable = true;
|
||||||
|
myModules.postgres.enable = true;
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
myModules.nvidia.enable = true;
|
||||||
# install nvidia drivers in addition to intel one
|
|
||||||
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
|
||||||
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "usbhid" "sd_mod" ];
|
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "usbhid" "sd_mod" ];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
@ -4,13 +4,25 @@
|
|||||||
../configuration.nix
|
../configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
services.macos-ventura = {
|
||||||
|
enable = true;
|
||||||
|
openFirewall = true;
|
||||||
|
vncListenAddr = "0.0.0.0";
|
||||||
|
};
|
||||||
|
|
||||||
features.full.enable = true;
|
features.full.enable = true;
|
||||||
modules.cache-server = {
|
myModules.cache-server = {
|
||||||
enable = true;
|
enable = true;
|
||||||
port = 3090;
|
port = 3090;
|
||||||
};
|
};
|
||||||
modules.gitea-runner.enable = true;
|
myModules.gitea-runner.enable = true;
|
||||||
modules.vscode.enable = true;
|
myModules.vscode.enable = true;
|
||||||
|
myModules.kat.enable = true;
|
||||||
|
myModules.nvidia.enable = true;
|
||||||
|
myModules.railbird-k3s = {
|
||||||
|
enable = true;
|
||||||
|
serverAddr = "https://dev.railbird.ai:6443";
|
||||||
|
};
|
||||||
|
|
||||||
networking.hostName = "nixquick";
|
networking.hostName = "nixquick";
|
||||||
|
|
||||||
@ -21,15 +33,6 @@
|
|||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
|
||||||
# install nvidia drivers in addition to intel one
|
|
||||||
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
|
||||||
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
|
||||||
services.xserver = {
|
|
||||||
videoDrivers = [ "nvidia" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.opengl.driSupport32Bit = true;
|
|
||||||
|
|
||||||
hardware.nvidia.modesetting.enable = true;
|
hardware.nvidia.modesetting.enable = true;
|
||||||
|
|
||||||
# This also enables v4l2loopback
|
# This also enables v4l2loopback
|
||||||
|
@ -12,58 +12,36 @@
|
|||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
modules.postgres.enable = true;
|
||||||
|
|
||||||
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
services.k3s.role = "agent";
|
||||||
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
services.k3s.extraFlags = lib.mkForce ["--node-label nixos-nvidia-cdi=enabled"];
|
||||||
services.xserver = {
|
|
||||||
videoDrivers = [ "nvidia" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
# Enable OpenGL
|
|
||||||
hardware.opengl = {
|
|
||||||
enable = true;
|
|
||||||
driSupport = true;
|
|
||||||
driSupport32Bit = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
|
|
||||||
# Modesetting is required.
|
|
||||||
modesetting.enable = true;
|
|
||||||
|
|
||||||
# Nvidia power management. Experimental, and can cause sleep/suspend to fail.
|
|
||||||
powerManagement.enable = false;
|
powerManagement.enable = false;
|
||||||
# Fine-grained power management. Turns off GPU when not in use.
|
# Fine-grained power management. Turns off GPU when not in use.
|
||||||
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
|
||||||
powerManagement.finegrained = false;
|
powerManagement.finegrained = false;
|
||||||
|
|
||||||
# Use the NVidia open source kernel module (not to be confused with the
|
|
||||||
# independent third-party "nouveau" open source driver).
|
|
||||||
# Support is limited to the Turing and later architectures. Full list of
|
|
||||||
# supported GPUs is at:
|
|
||||||
# https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
|
|
||||||
# Only available from driver 515.43.04+
|
|
||||||
# Currently alpha-quality/buggy, so false is currently the recommended setting.
|
|
||||||
open = false;
|
|
||||||
|
|
||||||
# Enable the Nvidia settings menu,
|
# Enable the Nvidia settings menu,
|
||||||
# accessible via `nvidia-settings`.
|
# accessible via `nvidia-settings`.
|
||||||
nvidiaSettings = true;
|
nvidiaSettings = true;
|
||||||
|
|
||||||
# Optionally, you may need to select the appropriate driver version for your specific GPU.
|
|
||||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
features.full.enable = false;
|
features.full.enable = false;
|
||||||
modules.base.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.desktop.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.xmonad.enable = false;
|
myModules.xmonad.enable = false;
|
||||||
modules.gnome.enable = true;
|
myModules.code.enable = true;
|
||||||
modules.code.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.syncthing.enable = true;
|
myModules.fonts.enable = true;
|
||||||
modules.fonts.enable = true;
|
myModules.plasma.enable = true;
|
||||||
modules.plasma.enable = false;
|
myModules.nvidia.enable = true;
|
||||||
modules.gitea-runner.enable = true;
|
myModules.gitea-runner.enable = true;
|
||||||
|
myModules.railbird-k3s = {
|
||||||
|
enable = false;
|
||||||
|
serverAddr = "https://dev.railbird.ai:6443";
|
||||||
|
};
|
||||||
|
|
||||||
fileSystems."/" =
|
fileSystems."/" =
|
||||||
{ device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae";
|
{ device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae";
|
||||||
@ -87,7 +65,7 @@
|
|||||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
|
||||||
home-manager.users = forEachUser {
|
home-manager.users = forEachUser {
|
||||||
home.stateVersion = "23.11";
|
home.stateVersion = "23.11";
|
||||||
};
|
};
|
||||||
|
@ -6,14 +6,17 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
features.full.enable = true;
|
features.full.enable = true;
|
||||||
|
myModules.kubelet.enable = false;
|
||||||
|
myModules.nvidia.enable = true;
|
||||||
# Needed for now because monitors have different refresh rates
|
# Needed for now because monitors have different refresh rates
|
||||||
modules.xmonad.picom.vSync.enable = false;
|
myModules.xmonad.picom.vSync.enable = false;
|
||||||
modules.cache-server = {
|
myModules.cache-server = {
|
||||||
enable = true;
|
enable = true;
|
||||||
port = 3090;
|
port = 3090;
|
||||||
};
|
};
|
||||||
modules.gitea-runner.enable = true;
|
myModules.gitea-runner.enable = true;
|
||||||
modules.postgres.enable = true;
|
myModules.postgres.enable = true;
|
||||||
|
myModules.railbird-k3s.enable = true;
|
||||||
|
|
||||||
boot.loader.systemd-boot.configurationLimit = 5;
|
boot.loader.systemd-boot.configurationLimit = 5;
|
||||||
|
|
||||||
@ -45,15 +48,15 @@
|
|||||||
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
boot.initrd.kernelModules = [ "dm-snapshot" ];
|
||||||
|
|
||||||
# install nvidia drivers in addition to intel one
|
# install nvidia drivers in addition to intel one
|
||||||
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
hardware.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
||||||
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
videoDrivers = [ "nvidia" ];
|
videoDrivers = [ "nvidia" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.nvidia.modesetting.enable = true;
|
hardware.nvidia.modesetting.enable = true;
|
||||||
|
|
||||||
hardware.opengl.driSupport32Bit = true;
|
hardware.graphics.enable32Bit = true;
|
||||||
|
|
||||||
boot.kernelModules = [ "kvm-amd" ];
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
../configuration.nix
|
../configuration.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.wsl.enable = true;
|
myModules.wsl.enable = true;
|
||||||
|
|
||||||
networking.hostName = "strixi-minaj-wsl";
|
networking.hostName = "strixi-minaj-wsl";
|
||||||
|
|
||||||
|
@ -3,18 +3,20 @@
|
|||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
../configuration.nix
|
../configuration.nix
|
||||||
|
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.base.enable = true;
|
hardware.nvidia.open = false;
|
||||||
modules.desktop.enable = true;
|
myModules.base.enable = true;
|
||||||
modules.xmonad.enable = true;
|
myModules.desktop.enable = true;
|
||||||
modules.extra.enable = false;
|
myModules.xmonad.enable = true;
|
||||||
modules.code.enable = true;
|
myModules.extra.enable = false;
|
||||||
modules.games.enable = false;
|
myModules.code.enable = true;
|
||||||
modules.syncthing.enable = true;
|
myModules.games.enable = false;
|
||||||
modules.fonts.enable = true;
|
myModules.syncthing.enable = true;
|
||||||
modules.nixified-ai.enable = false;
|
myModules.fonts.enable = true;
|
||||||
modules.gitea-runner.enable = false;
|
myModules.nixified-ai.enable = false;
|
||||||
|
myModules.gitea-runner.enable = false;
|
||||||
|
|
||||||
hardware.enableRedistributableFirmware = true;
|
hardware.enableRedistributableFirmware = true;
|
||||||
|
|
||||||
@ -23,21 +25,15 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
services.xserver.dpi = 96;
|
services.xserver.dpi = 96;
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_testing;
|
||||||
boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ];
|
||||||
boot.initrd.kernelModules = [ ];
|
boot.initrd.kernelModules = [ ];
|
||||||
boot.kernelModules = [ "kvm-intel" ];
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
boot.extraModulePackages = [ ];
|
boot.extraModulePackages = [ ];
|
||||||
services.xserver = {
|
hardware.graphics = {
|
||||||
videoDrivers = [ "nvidia" ];
|
|
||||||
};
|
|
||||||
hardware.opengl = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
driSupport = true;
|
enable32Bit = true;
|
||||||
driSupport32Bit = true;
|
|
||||||
};
|
};
|
||||||
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.production;
|
|
||||||
hardware.nvidia.modesetting.enable = true;
|
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
};
|
};
|
||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.backupFileExtension = "backup";
|
||||||
|
|
||||||
nix = rec {
|
nix = rec {
|
||||||
extraOptions = ''
|
extraOptions = ''
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ inputs, config, specialArgs, ... }:
|
{ inputs, config, specialArgs, ... }:
|
||||||
specialArgs.makeEnable config "modules.nixified-ai" false {
|
specialArgs.makeEnable config "myModules.nixified-ai" false {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.nixified-ai.nixosModules.invokeai
|
inputs.nixified-ai.nixosModules.invokeai
|
||||||
];
|
];
|
||||||
|
18
nixos/nvidia.nix
Normal file
18
nixos/nvidia.nix
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{ config, pkgs, makeEnable, ... }:
|
||||||
|
|
||||||
|
makeEnable config "myModules.nvidia" false {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
nvidia-container-toolkit
|
||||||
|
];
|
||||||
|
hardware.nvidia-container-toolkit = {
|
||||||
|
enable = true;
|
||||||
|
mount-nvidia-executables = true;
|
||||||
|
};
|
||||||
|
hardware.nvidia.open = false;
|
||||||
|
hardware.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
|
||||||
|
hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
|
||||||
|
hardware.graphics.enable32Bit = true;
|
||||||
|
services.xserver = {
|
||||||
|
videoDrivers = [ "nvidia" ];
|
||||||
|
};
|
||||||
|
}
|
@ -1,6 +1,6 @@
|
|||||||
{ lib, ... }: {
|
{ lib, ... }: {
|
||||||
options = {
|
options = {
|
||||||
modules.xmonad.picom.vSync.enable = lib.mkOption {
|
myModules.xmonad.picom.vSync.enable = lib.mkOption {
|
||||||
default = true;
|
default = true;
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
};
|
};
|
||||||
|
@ -17,15 +17,16 @@ 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 final.gnugrep.pcre2 final.libpcre];
|
||||||
});
|
# buildInputs = old.buildInputs ++ [final.pcre];
|
||||||
|
# });
|
||||||
|
|
||||||
expressvpn = prev.expressvpn.overrideAttrs (_: {
|
expressvpn = prev.expressvpn.overrideAttrs (_: {
|
||||||
src = prev.fetchurl {
|
src = prev.fetchurl {
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, makeEnable, ... }:
|
{ config, makeEnable, ... }:
|
||||||
makeEnable config "modules.plasma" true {
|
makeEnable config "myModules.plasma" true {
|
||||||
services.displayManager.sddm.enable = true;
|
services.displayManager.sddm.enable = true;
|
||||||
services.xserver = {
|
services.xserver = {
|
||||||
desktopManager.plasma5.enable = true;
|
desktopManager.plasma5.enable = true;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, config, makeEnable, realUsers, ... }:
|
{ pkgs, config, makeEnable, realUsers, ... }:
|
||||||
makeEnable config "modules.postgres" true {
|
makeEnable config "myModules.postgres" true {
|
||||||
services.postgresql = {
|
services.postgresql = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.postgresql_15;
|
package = pkgs.postgresql_15;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ pkgs, config, makeEnable, realUsers, ... }:
|
{ pkgs, config, makeEnable, realUsers, ... }:
|
||||||
makeEnable config "modules.rabbitmq" true {
|
makeEnable config "myModules.rabbitmq" true {
|
||||||
services.rabbitmq = {
|
services.rabbitmq = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
|
25
nixos/railbird-kubernetes.crt
Normal file
25
nixos/railbird-kubernetes.crt
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIELTCCApWgAwIBAgIRALNxOT7J7N/eK6edp9LbKAIwDQYJKoZIhvcNAQELBQAw
|
||||||
|
LzEtMCsGA1UEAxMkM2I2N2M2NzgtNzI5My00YTIzLTg3ZWItY2NiMTZjYWFkMzFm
|
||||||
|
MCAXDTIzMTIyOTE5NTQ0MloYDzIwNTMxMjIxMjA1NDQyWjAvMS0wKwYDVQQDEyQz
|
||||||
|
YjY3YzY3OC03MjkzLTRhMjMtODdlYi1jY2IxNmNhYWQzMWYwggGiMA0GCSqGSIb3
|
||||||
|
DQEBAQUAA4IBjwAwggGKAoIBgQCUYUuTrpDbwUS2B3SYUoa7LI5mi8NNr0lDe1w4
|
||||||
|
3yPpVnu6ubvnTNm2j/v88HYwEjlppEg4HjhP7YEJ8gsGdgUCpIaPWTpifVmA7E4o
|
||||||
|
2DbJDiePkkUGkNL0whCClOOcO0hyxdk9Pol5wRzci0l6zSalE6DB4rJrmB5Ppl/A
|
||||||
|
t2KAVVqpwbynmbijr4yZh7Bp7LfaIrFthlv2ZPEjLfPLz7YthBw9/iUt94mLMyWZ
|
||||||
|
BpygA5y/CocQQnnFMnU1o0eUd37YL7zErfIxx/AmL10Sq0qdFXiYOJJqubURbdS8
|
||||||
|
DZ6dyHdX+UlxPls2Rlx9nDaiNGFJdzqHJzDdOlzN3kkdDQoO8xUdH9ekFU7rOwkP
|
||||||
|
5NpubSwrd1FOGHh+EknugnEQD4Oip/YQ7IUj3Afm5Ag2la9k4WJRgjACbkQ2+k9I
|
||||||
|
sFmPmmMVHn9nepCMiYQMjX7ApZw0isDPeVK5EuQeImgu7uNoV8R5VwG0XoBCXz4S
|
||||||
|
UqYv11uEsMqFu07Zwlznsxnm0uECAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgIEMA8G
|
||||||
|
A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI73GznmeECJOdxJAEzmjhYgGVKtMA0G
|
||||||
|
CSqGSIb3DQEBCwUAA4IBgQAm19zlm3WVePflA6Zh/FxvE8MirrJF6jmJzRrBCEM5
|
||||||
|
DwkSmY3dvONqCYeeNb4+xWXWQ8eVKVlPdkoW3V7H5xnJ63dXRNN2lQ3JpSTG3+yP
|
||||||
|
Omp6XGY9mmatdHwyV7N4h10aKEWAuRhy148sdJZLYj0LbR42pCVYhEP4D3Qj7KjN
|
||||||
|
PJe+cR8NSpiYmDH5y88Jqubztj5NVcDj/iN9h/7/GajbU6lCgN/SxZgi9cNGjxSb
|
||||||
|
JHFHE2Mp3z9sjsieTXMplLqK045TQ2IBqnJyMdKkvSNkRUCbz2yXdiIOKtvU4ly0
|
||||||
|
h884z9P5JQ9bxe+6cwYC4ky3G5WYMn++RUsuCk4ScsrbZtM9jpKnz/TygMdVTC5w
|
||||||
|
Siq6OHKtAnh8Ax1LEKicg9FLd6ODxR3OVKu+fUPV4XHAWJnmvElGlivjneHiE+OL
|
||||||
|
dzgb/CfBEGHYBVc2PDIhwBmUdoEZ/t3UjvmSI46ZblYpWodJvLFwge2HxSivRlLW
|
||||||
|
Uh/oPWX5N/CH9I34HTAhI48=
|
||||||
|
-----END CERTIFICATE-----
|
@ -1,6 +1,6 @@
|
|||||||
{ config, pkgs, inputs, makeEnable, ... }:
|
{ config, pkgs, inputs, makeEnable, ... }:
|
||||||
|
|
||||||
makeEnable config "modules.raspberry-pi" false {
|
makeEnable config "myModules.raspberry-pi" false {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
inputs.nixos-hardware.nixosModules.raspberry-pi-4
|
||||||
];
|
];
|
||||||
@ -12,6 +12,7 @@ makeEnable config "modules.raspberry-pi" false {
|
|||||||
# hardware.raspberry-pi."4".audio.enable = true;
|
# hardware.raspberry-pi."4".audio.enable = true;
|
||||||
|
|
||||||
boot = {
|
boot = {
|
||||||
|
initrd.systemd.tpm2.enable = false;
|
||||||
initrd.availableKernelModules = [
|
initrd.availableKernelModules = [
|
||||||
"usbhid"
|
"usbhid"
|
||||||
"usb_storage"
|
"usb_storage"
|
||||||
|
51
nixos/secrets/1896Folsom-k3s-token.age
Normal file
51
nixos/secrets/1896Folsom-k3s-token.age
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 ZgrTqA MGp4jtyXCV3QBrIuy/WQthJGxLUnFNgZlf3HNtZtukY
|
||||||
|
jbskLgoJDhl755Qn4ZdW5nYK7Ug2eLm4oQyazff6Uf4
|
||||||
|
-> ssh-ed25519 ZaBdSg hjFZhYc4AKvp8585jS4pivMFTxPd0miyQdjJQjQvERQ
|
||||||
|
4P8PqJ7gz99nuGyAOh73gECCNTa8U56t/byr0h1plLo
|
||||||
|
-> ssh-ed25519 MHZylw iZq2dXCa4gSDpmbQazU4JPCXnbXjrMx2Nh0FCYACCTM
|
||||||
|
yVE+tooOjxvD1OBziXHz5yv0k2purR/QouE3SSzinPw
|
||||||
|
-> ssh-ed25519 sIUg6g ppAmkq3uj/heZ/RhK6BCz3o6d9l6tw+FeoV+GM4jh2M
|
||||||
|
F+Og7e744NSgaUs9zZ28ttPdbl0xkN82KgqGnfv/9sM
|
||||||
|
-> ssh-ed25519 TnanwQ GwsA+F4Co/Vxg5I04GxBW6EPPXOT2PtHCdiq6KEFJ0w
|
||||||
|
vcJiXNxnh32Q00VodKXhvTmiTglxSCiSPLwOFXrQPxU
|
||||||
|
-> ssh-rsa gwJx0Q
|
||||||
|
EoF9WbtAgRZyWQPtcwrQTIxXMfNSl6Fpm7DITAwocm04U2aoNEnhvsU/0olrCGpU
|
||||||
|
ez4CTnTZuOCVe8yr9KYjy9bU/41L2k89P/yk92i0Fm9412tIvYodSx0Qjju4hpPo
|
||||||
|
ptLAp+5wUgeRarEpnPHQBKnyeR4PcaVAeAYyiFHKjFZIaZ6oBEHbJGd8QO02RwAG
|
||||||
|
2hnGkVzHhQOxnd6VN4h4xP4BfWXZ8rwTigenVMSwMkrWg0Xx+iXPvGhbLh0P/o5d
|
||||||
|
VKtISQGzfL9rr2N4VYJHUT6JgQHNy66qd9YKrcY0bRanlMSeR7p217f/sKOc9SIL
|
||||||
|
h9URYNbaxGhdx9JuQVywIA
|
||||||
|
-> ssh-ed25519 YFIoHA xsirlZemMNZIOEcc164PM3SO2gJ6DrNM1xU2Phj/TWA
|
||||||
|
v0cCi2mVuPMpy17w6q1GLgv/5k6wetFFBUzeAw6YGK8
|
||||||
|
-> ssh-ed25519 KQfiow wVCBy3SI6pY/Q1C5Zqq6//KPHma8PR8Qd5DhwO7+SSY
|
||||||
|
ODABvuKUzhcuUj/YVwa1tCdgj/WBrhMHpwOmjgMTNDo
|
||||||
|
-> ssh-ed25519 kScIxg 9qaWKYi08kVEz5HnFluLfHJz0dNl0gqSj+yTBRmX5U8
|
||||||
|
2NBABg/XbcWq4gZp3vtnLZ4yBAZkPdXckDGnHc0rC1U
|
||||||
|
-> ssh-ed25519 HzX1zw hMbFcHddfBJ+fU2Ay+J+siEi/rH0kTXTRJS1pFe9rFg
|
||||||
|
IBPsFZ2vBc/t0L+anbugwX9A8lj8t6AykZzSovxTCxc
|
||||||
|
-> ssh-ed25519 KQfiow 5mUphYz0qwZi78nxpxrQNWeXdum5o1cVj76sSrDgIlA
|
||||||
|
KamxIS2NJaI7DTy9SJisGU+KTKTsDx7dXw7TlsSnq9o
|
||||||
|
-> ssh-ed25519 1o2X0w zwmrw9msofsTJ9qkqaQWs0CWG2ArWXIb3hX/eFlM/2E
|
||||||
|
L8CTuqIKNU1Ff2vWmIWtvLPmI8MOSlUobTLzQGladMg
|
||||||
|
-> ssh-ed25519 KQ5iUA 03zopYKa8ki6hqJiiFOoAE0cNEg6uGWk7VF3teDzkws
|
||||||
|
FxHYVfs2lCDlWspyv+03yjdJHSIIDUq8PTkhyLyomdM
|
||||||
|
-> ssh-ed25519 AKGkDw BBg9+2iPHediKJ0xd/tVcoofbJvws2QIF2yskvE1OBs
|
||||||
|
ZM32S8i6ZNG1cPSO3Ojkyy4JYKnJMXv72/RsE1g2o2Y
|
||||||
|
-> ssh-ed25519 0eS5+A VedHoAI2jnrcY5E+Db6qyoJJnevOJ4NF1YzSGUAP6R4
|
||||||
|
jO9JaT6BiuiriIpWzc6fpJMDxqu3718KMMcHWFtHq14
|
||||||
|
-> ssh-ed25519 9/4Prw gcQ7zE+fSceLHLIi26qs348WJH7Jta36N1dPRIp2+2E
|
||||||
|
69jtpz9PVWh1KJM5fKUy923ddah7PiwvabFsNST19Ag
|
||||||
|
-> ssh-ed25519 gAk3+Q C30KhWJmYd4D3bCuoD7hOZrehDhjMhTpzB1PmqRqph4
|
||||||
|
BEpcSaCnz8zLOho7Da7mBtAeLeCJMXbMkyg8CW5OKQI
|
||||||
|
-> ssh-ed25519 X6eGtQ EP1F3zxhA6pPsFl638bLkYgsBDn1NHH4xbR3U50ZtSA
|
||||||
|
0h8Oe4zZ68GwzHp07LjUmKA69paiGBQGcakpIi8w+VA
|
||||||
|
-> ssh-ed25519 0ma8Cw hQ1jQxz3XqtHo3ENzLiX85dmrtD2KpFb+Nx9t95EugM
|
||||||
|
1oFklRDdtko9lf9GxJbu0IH7uTD7Iae8nLA6KoVLA1g
|
||||||
|
-> ssh-ed25519 Tp0Z1Q VvWo+U0VBidsCCtQKWfEqcgnjzbi7TlSPdrqaZcAGzA
|
||||||
|
zRKu1PrurMXm/hQL1DzdgXQLDwebJCtcDzdiceBS00I
|
||||||
|
-> ssh-ed25519 qQi7yA kOOIJPZqdp7dRRxPLqwDlNv4OXUI+RYXkA5IlI0YP04
|
||||||
|
HnwjK1XmdwIL478UXhRPVPU5YCJYALnpmryF0Kaz5vA
|
||||||
|
--- 3MSdvhunDcposjHvMTMOSX6jM4Zj6EndDVgEMMrDpiM
|
||||||
|
òEÑ“É4š˜à`|[áØ
]BÌs/€£a1o7ðF'<27>xU§<55>¤qšáðpdäid®,£ìp“bB0ØL‰nÃã~Qm|žK\ŽçiM™G>¿ðx9ÿïÒ€Ù9òwQŒÝ=ýl^YÊÐ+E[J¤É<C2A4>y뀧ûåœDàQÃè1k†Ó
|
||||||
|
4‡ñH«Èh!
|
BIN
nixos/secrets/api_service_account_key.json.age
Normal file
BIN
nixos/secrets/api_service_account_key.json.age
Normal file
Binary file not shown.
50
nixos/secrets/gitea-runner-token.age
Normal file
50
nixos/secrets/gitea-runner-token.age
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 ZgrTqA fUdYNjuALrimf6eo5FoqjGF0Zvzo4HBMW6cr53NO+D4
|
||||||
|
YPI8i4LK2Iz0C89Cx91kx0z+oLQmzVp7rTI9r7+TJcc
|
||||||
|
-> ssh-ed25519 ZaBdSg 4INz9+Kf25/qCECW0ylv3oZ0j6ouFJigP+gVSvm97Vc
|
||||||
|
mmzlvBxYh703ZEzf73FF7ifDjysMEl2GOT5heGEn+Ts
|
||||||
|
-> ssh-ed25519 MHZylw I/e6YCpLKOmjfmnkhF9qsG1S690YuCuHkHm10SOTSTo
|
||||||
|
3hnodZC9lVNTsigacqP26JibaaRdModVJCsaiugBNCs
|
||||||
|
-> ssh-ed25519 sIUg6g VTWz7slnoJSC5bpGw6o5G7n2y439GbjNiZaFMLaN5jI
|
||||||
|
lIJgwvZSyv422Nqct3LmB65ga66y4WSp0ok9RVN9G0s
|
||||||
|
-> ssh-ed25519 TnanwQ jnix1dT8u58lNCEmn4mMEn/66XNhYkfOmlQzz9ybpXA
|
||||||
|
rpJ1RE1aN8ZFvwXdnWMz5WmtIPVYuaoFW+dUxUHSue0
|
||||||
|
-> ssh-rsa gwJx0Q
|
||||||
|
d3ys74cy6D+bpqZoaWyzcCHlgY+2sxSR4U41KpLTa1CodYQfhf/QzfhMhNRbKNrg
|
||||||
|
eoFB4Z9QSIkbqQedkqmR+gjDtklSG/Jz/1QZxkKm3pRulDq0YA+crduA72Xs+ReF
|
||||||
|
yRfAotYMZ+fJvJBJ4C604XzX2JyDsZ9pMxvzH3ntWLL2ay9wgY8beVekCfyAEgr6
|
||||||
|
EmFE1xPS5/SvEGz/3x0pxn6qtGXR7JAQYIZw7xVgpLvaY+yGjBGgF97RT8NZKmps
|
||||||
|
Y+4DpQMVhJpMREpsGa78zN2PNsZoV3uc/rT7GLfhX1NJxjDfQ5whLF4ykrerg4ZB
|
||||||
|
Mm3HhALUqeGd8trA+dRZiw
|
||||||
|
-> ssh-ed25519 YFIoHA U7m8uc58dgdk3HS920pXyMUwSustTkyHbomhhYvKxhc
|
||||||
|
8TRED2gwbj1IeZxFR9EmkTqsVLgl1pLgja7FpRvw8WY
|
||||||
|
-> ssh-ed25519 KQfiow et6x8B9B0X0hX695r/tfriEoInXXcHUkAiaQhXK6NGo
|
||||||
|
UkJcdPjs1q//FDy+dGY2uaaGbgw6azVB1/zc5wrdQy8
|
||||||
|
-> ssh-ed25519 kScIxg 9UbFUlg4SGEY7L8vOummxwHhypcipPtRq/yhw8k6K2g
|
||||||
|
vfLB37DdDA7nEXlNSkJUXwDwQ5UoDonkiKIhSjG4N24
|
||||||
|
-> ssh-ed25519 HzX1zw 4LkDXxeqKtYI8EhwXccMRlRw88flevLGFgzwt9nbNWY
|
||||||
|
EtrL0itCfPvQtrIFWXqnPoje6Cy//KHZ//OwcibLy4s
|
||||||
|
-> ssh-ed25519 KQfiow VPlZHErfIKR0NOG8/Rqwu7LQKP13izSQVck8s217LkM
|
||||||
|
v8+OEZZTe+pybXqEtUQ1ILNQ2TbB4QSIkHacMQUkYGg
|
||||||
|
-> ssh-ed25519 1o2X0w s8Of4YUoOKrBMa2AjcBYFXPEqwmjZEKGpGwf0F5Z9wo
|
||||||
|
ifK7DqiArFCFIjxMHxLB1vlzZ+H/60H+a4xdmdvkf0I
|
||||||
|
-> ssh-ed25519 KQ5iUA 1Jn+jIAmcJ1QUbC2Yz6XfVoM4XbS3HHEXJHJvDS3mlE
|
||||||
|
rsmCtAlqxVzUfJeRT5kmU0FI5cAiCtqA1bpeG0aci+c
|
||||||
|
-> ssh-ed25519 AKGkDw uB/GYB86+P5I9EtWJjCyrPYJKxlF8KLwjVacnS3FYg0
|
||||||
|
kAsGXL4c1IDU3rklHnyMpY454DLSCibhEy5U9vfoQxE
|
||||||
|
-> ssh-ed25519 0eS5+A xe3LGZVaCS6rCrULdfdtHpuwdnib0FizFhseyWjUxBQ
|
||||||
|
nKmumufCm1WQj1MdfawMWFHztFJhP/7+4h8f7PD4+z8
|
||||||
|
-> ssh-ed25519 9/4Prw vsOHzuM608TC+t+dqQbMHtZnTcfgGHJq/CfVazWeVFk
|
||||||
|
I/w6R2t/pmdA+Ktool+1hU21GjjG/hwe0vSq89jtULw
|
||||||
|
-> ssh-ed25519 gAk3+Q GMi0sxNOfeqbmMuU25wGnZdLx8D7zTYZ5Nx5OLjOaCA
|
||||||
|
eweAPpjwjHYdySCtWbzwpM9RZ+Ohim/0HQiy2bssIFg
|
||||||
|
-> ssh-ed25519 X6eGtQ bTbsvZYuHIYj6AUQ8hLvn9OKLhapi3VqU7nUDT2kxRQ
|
||||||
|
X0Kh45FK79mdXA1AqySw/rC73maypSP5BpKso0BKHeM
|
||||||
|
-> ssh-ed25519 0ma8Cw miWf5St4zNDpl7ydZPm4NDbhN0Pp5jAP28IdIXfoA38
|
||||||
|
yH13uHPwUCRyaXqnieNvkDDNkrACPaoIVFQUiVK2ZLk
|
||||||
|
-> ssh-ed25519 Tp0Z1Q dvgXe3vQqY9le3KaROdzaP4jnjQ8kljfC+D/sSpwjnw
|
||||||
|
/fwCFlvRRwUZ0ebYXJTdlGRxY6H9elCh5ULsyLve6IM
|
||||||
|
-> ssh-ed25519 qQi7yA 83iacCsgW3Iw83C753dqBCM6/i8qyKLqJ0AvEIgxsT4
|
||||||
|
uI6NwcRcJUJMYR7vMhZvlnmdWRV9J4FUm8KbDutuKTo
|
||||||
|
--- o88XKoHrskw3WGcaj1Ie6UzwfWcfKl76oO8zwk2jcNk
|
||||||
|
z…ðÆeïYòUêp[ò4ËVëî-þLE%Eڛ¾Ó<C2BE>BSWõ²Õ–½ñ0¼ÿ¯=¢‡-Jt•ÌO<C38C>õšï<C5A1>瀖É9èp_Kd¬
|
BIN
nixos/secrets/gitea-runner-token.mac-demarco-mini.age
Normal file
BIN
nixos/secrets/gitea-runner-token.mac-demarco-mini.age
Normal file
Binary file not shown.
Binary file not shown.
BIN
nixos/secrets/k3s-registry.yaml.age
Normal file
BIN
nixos/secrets/k3s-registry.yaml.age
Normal file
Binary file not shown.
BIN
nixos/secrets/ryzen-shine-kubernetes-token.age
Normal file
BIN
nixos/secrets/ryzen-shine-kubernetes-token.age
Normal file
Binary file not shown.
@ -10,5 +10,11 @@ in
|
|||||||
"gitea-runner-token.jimi-hendnix.age".publicKeys = keys.agenixKeys;
|
"gitea-runner-token.jimi-hendnix.age".publicKeys = keys.agenixKeys;
|
||||||
"gitea-runner-token.adele.age".publicKeys = keys.agenixKeys;
|
"gitea-runner-token.adele.age".publicKeys = keys.agenixKeys;
|
||||||
"gitea-runner-token.railbird-sf.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
"gitea-runner-token.railbird-sf.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
||||||
|
"gitea-runner-token.mac-demarco-mini.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
||||||
|
"gitea-runner-token.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
||||||
"nextcloud-admin.age".publicKeys = keys.agenixKeys;
|
"nextcloud-admin.age".publicKeys = keys.agenixKeys;
|
||||||
|
"ryzen-shine-kubernetes-token.age".publicKeys = keys.agenixKeys;
|
||||||
|
"1896Folsom-k3s-token.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
||||||
|
"api_service_account_key.json.age".publicKeys = keys.agenixKeys;
|
||||||
|
"k3s-registry.yaml.age".publicKeys = keys.agenixKeys ++ keys.railbird-sf;
|
||||||
}
|
}
|
||||||
|
@ -17,10 +17,12 @@ let
|
|||||||
mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; };
|
mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; };
|
||||||
strixi-minaj-wsl = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; };
|
strixi-minaj-wsl = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; };
|
||||||
strixi-minaj = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; };
|
strixi-minaj = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; };
|
||||||
|
dean-zephyrus = { id = "UVIQVZQ-WFWVUQT-OTXPK7V-RXFKAVV-RY5DV2Z-XZEH3Q2-JQZIQLW-XMSB6AT"; };
|
||||||
|
bencbox = { id = "FZFDBDG-J56RKLU-JZUHEAB-SAGB6CM-LRR6QFC-ZLNQG22-R2DEXAC-MY4BXQN"; };
|
||||||
};
|
};
|
||||||
allDevices = builtins.attrNames devices;
|
allDevices = builtins.attrNames devices;
|
||||||
in
|
in
|
||||||
makeEnable config "modules.syncthing" true {
|
makeEnable config "myModules.syncthing" true {
|
||||||
system.activationScripts.syncthingPermissions = {
|
system.activationScripts.syncthingPermissions = {
|
||||||
text = ''
|
text = ''
|
||||||
chown -R syncthing:syncthing /var/lib/syncthing
|
chown -R syncthing:syncthing /var/lib/syncthing
|
||||||
|
@ -92,7 +92,12 @@ in
|
|||||||
railbird = userDefaults // {
|
railbird = userDefaults // {
|
||||||
inherit extraGroups;
|
inherit extraGroups;
|
||||||
name = "railbird";
|
name = "railbird";
|
||||||
openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.railbirdDevKeys;
|
openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.railbirdFullstackDevKeys;
|
||||||
|
};
|
||||||
|
interview = userDefaults // {
|
||||||
|
inherit extraGroups;
|
||||||
|
name = "interview";
|
||||||
|
openssh.authorizedKeys.keys = interviewKeys ++ inputs.railbird-secrets.keys.railbirdFullstackDevKeys;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ inputs, config, makeEnable, forEachUser, ... }:
|
{ inputs, config, makeEnable, forEachUser, ... }:
|
||||||
makeEnable config "modules.vscode" true {
|
makeEnable config "myModules.vscode" true {
|
||||||
home-manager.users = forEachUser {
|
home-manager.users = forEachUser {
|
||||||
imports = [inputs.vscode-server.homeModules.default];
|
imports = [inputs.vscode-server.homeModules.default];
|
||||||
services.vscode-server.enable = true;
|
services.vscode-server.enable = true;
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
{ config, inputs, pkgs, makeEnable, ... }:
|
{ config, inputs, pkgs, makeEnable, ... }:
|
||||||
makeEnable config "modules.wsl" false {
|
makeEnable config "myModules.wsl" false {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.nixos-wsl.nixosModules.wsl
|
inputs.nixos-wsl.nixosModules.wsl
|
||||||
];
|
];
|
||||||
|
|
||||||
modules.base.enable = false;
|
myModules.base.enable = false;
|
||||||
modules.desktop.enable = false;
|
myModules.desktop.enable = false;
|
||||||
modules.xmonad.enable = false;
|
myModules.xmonad.enable = false;
|
||||||
modules.plasma.enable = false;
|
myModules.plasma.enable = false;
|
||||||
|
|
||||||
# Update timezone automatically
|
# Update timezone automatically
|
||||||
services.tzupdate.enable = true;
|
services.tzupdate.enable = true;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{ config, pkgs, inputs, forEachUser, makeEnable, ... }:
|
{ config, pkgs, inputs, forEachUser, makeEnable, ... }:
|
||||||
makeEnable config "modules.xmonad" true {
|
makeEnable config "myModules.xmonad" true {
|
||||||
nixpkgs.overlays = with inputs; [
|
nixpkgs.overlays = with inputs; [
|
||||||
xmonad.overlay
|
xmonad.overlay
|
||||||
xmonad-contrib.overlay
|
xmonad-contrib.overlay
|
||||||
@ -25,7 +25,7 @@ makeEnable config "modules.xmonad" true {
|
|||||||
# Haskell Desktop
|
# Haskell Desktop
|
||||||
haskellPackages.xmonad
|
haskellPackages.xmonad
|
||||||
haskellPackages.imalison-xmonad
|
haskellPackages.imalison-xmonad
|
||||||
haskellPackages.notifications-tray-icon
|
# haskellPackages.notifications-tray-icon
|
||||||
haskellPackages.gtk-sni-tray
|
haskellPackages.gtk-sni-tray
|
||||||
haskellPackages.status-notifier-item
|
haskellPackages.status-notifier-item
|
||||||
haskellPackages.dbus-hslogger
|
haskellPackages.dbus-hslogger
|
||||||
@ -80,7 +80,7 @@ makeEnable config "modules.xmonad" true {
|
|||||||
|
|
||||||
services.picom = {
|
services.picom = {
|
||||||
enable = true;
|
enable = true;
|
||||||
vSync = config.modules.xmonad.picom.vSync.enable;
|
vSync = config.myModules.xmonad.picom.vSync.enable;
|
||||||
backend = "glx";
|
backend = "glx";
|
||||||
extraArgs = ["--experimental-backends"];
|
extraArgs = ["--experimental-backends"];
|
||||||
|
|
||||||
@ -137,21 +137,21 @@ makeEnable config "modules.xmonad" true {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd.user.services.notifications-tray-icon = {
|
# systemd.user.services.notifications-tray-icon = {
|
||||||
Unit = {
|
# Unit = {
|
||||||
Description = "Notifications tray icon";
|
# Description = "Notifications tray icon";
|
||||||
After = [ "graphical-session-pre.target" "tray.target" ];
|
# After = [ "graphical-session-pre.target" "tray.target" ];
|
||||||
PartOf = [ "graphical-session.target" ];
|
# PartOf = [ "graphical-session.target" ];
|
||||||
};
|
# };
|
||||||
|
|
||||||
Install = { WantedBy = [ "graphical-session.target" ]; };
|
# Install = { WantedBy = [ "graphical-session.target" ]; };
|
||||||
|
|
||||||
Service = {
|
# Service = {
|
||||||
ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token";
|
# ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token";
|
||||||
Restart = "always";
|
# Restart = "always";
|
||||||
RestartSec = 3;
|
# RestartSec = 3;
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
|
|
||||||
systemd.user.services.shutter = {
|
systemd.user.services.shutter = {
|
||||||
Unit = {
|
Unit = {
|
||||||
|
Loading…
Reference in New Issue
Block a user