Compare commits

..

No commits in common. "master" and "addBenModule" have entirely different histories.

79 changed files with 483 additions and 1924 deletions

8
.travis.yml Normal file
View File

@ -0,0 +1,8 @@
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"

View File

@ -0,0 +1,63 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
htop_version=3.3.0
config_reader_min_version=3
fields=0 48 17 18 38 39 40 2 46 47 49 1
hide_kernel_threads=1
hide_userland_threads=1
hide_running_in_container=0
shadow_other_users=0
show_thread_names=0
show_program_path=1
highlight_base_name=0
highlight_deleted_exe=1
shadow_distribution_path_prefix=0
highlight_megabytes=1
highlight_threads=0
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
header_margin=1
screen_tabs=0
detailed_cpu_time=0
cpu_count_from_one=1
show_cpu_usage=1
show_cpu_frequency=0
show_cpu_temperature=0
degree_fahrenheit=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
enable_mouse=1
delay=15
hide_function_bar=0
header_layout=two_50_50
column_meters_0=AllCPUs Memory Swap
column_meter_modes_0=1 1 1
column_meters_1=Tasks LoadAverage Uptime
column_meter_modes_1=2 2 2
tree_view=0
sort_key=48
tree_sort_key=46
sort_direction=1
tree_sort_direction=-1
tree_view_always_by_pid=0
all_branches_collapsed=0
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command
.sort_key=USER
.tree_sort_key=PERCENT_CPU
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=1
.tree_sort_direction=-1
.all_branches_collapsed=0
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
.sort_key=IO_RATE
.tree_sort_key=PID
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=-1
.tree_sort_direction=1
.all_branches_collapsed=0

@ -1 +1 @@
Subproject commit a82a8a0cffb34b5eae38e46d88f02641bf8a8fe5 Subproject commit 9c8540a56432db6555755a9a649b4874833520ed

View File

@ -4,7 +4,6 @@
(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

View File

@ -1514,26 +1514,20 @@ 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
** indent-bars ** highlight-indent-guides
#+begin_src emacs-lisp If the load-theme hook from this package starts causing trouble check for
(use-package indent-bars custom-set-faces in your custom file.
:disabled t #+BEGIN_SRC emacs-lisp
:straight (indent-bars :type git :host github :repo "jdtsmith/indent-bars") (use-package highlight-indent-guides
:commands highlight-indent-guides-mode
:diminish highlight-indent-guides-mode
:preface
(progn
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
:config :config
(require 'indent-bars-ts) ; not needed with straight (progn
:custom (setq highlight-indent-guides-method 'fill)))
(indent-bars-treesit-support t) #+END_SRC
(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
@ -1791,8 +1785,7 @@ 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)
(let ((consult-ripgrep-args (concat consult-ripgrep-args " --no-ignore" " --hidden"))) (apply 'consult-ripgrep default-directory args))
(apply 'consult-ripgrep default-directory args)))
(emit-prefix-selector imalison:do-rg (emit-prefix-selector imalison:do-rg
consult-ripgrep consult-ripgrep
@ -2323,13 +2316,6 @@ 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
@ -2906,10 +2892,6 @@ 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)
@ -3349,30 +3331,6 @@ emr (emacs refactor) provides support for refactoring in many programming langua
(setq lsp-ui-doc-position 'bottom))))) (setq lsp-ui-doc-position 'bottom)))))
#+END_SRC #+END_SRC
* Utility * Utility
** eat
#+begin_src emacs-lisp
(use-package eat
:preface
(progn
(defun imalison:avy-eat (arg)
(interactive "P")
(eat-emacs-mode)
(imalison:avy arg)))
:bind
(:map eat-mode-map
("C-c C-k" . eat-semi-char-mode)
:map eat-semi-char-mode-map
("C-c C-j" . eat-emacs-mode)
("C-j" . imalison:avy-eat))
:config
(progn
(setq eat--install-path
(file-name-directory
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
(eat-compile-terminfo)
(setq eat-term-shell-integration-directory
(imalison:join-paths eat--install-path "integration"))))
#+end_src
** term ** term
The main thing I do here is restore a bunch of keybindings that are eliminated The main thing I do here is restore a bunch of keybindings that are eliminated
in term-mode. This makes term-mode 1000% more useful in term-mode. This makes term-mode 1000% more useful
@ -3454,12 +3412,6 @@ in term-mode. This makes term-mode 1000% more useful
term-projectile-switch) term-projectile-switch)
:config :config
(progn (progn
(use-package term-manager-eat
:demand t
:straight
(term-manager-eat :type git :files ("term-manager-eat.el")
:host github :repo "colonelpanic8/term-manager"))
(setq term-projectile-term-manager (term-projectile :build-term 'term-manager-eat-build-term))
(emit-prefix-selector imalison:term (emit-prefix-selector imalison:term
term-projectile-forward term-projectile-forward
term-projectile-create-new) term-projectile-create-new)
@ -3655,6 +3607,15 @@ 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
@ -4139,12 +4100,7 @@ This also adds syntax highlighting for gradle
#+END_SRC #+END_SRC
** evil ** evil
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package evil (use-package evil :commands (evil-mode))
:commands (evil-mode)
:config
(use-package evil-collection
:config
(with-eval-after-load 'eat (evil-collection-eat-setup))))
#+END_SRC #+END_SRC
** hackernews ** hackernews
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp

View File

@ -163,8 +163,3 @@ This makes evil-mode play nice with org-fc
(use-package org-drill) (use-package org-drill)
#+end_src #+end_src
* Disable wild notifactions
#+begin_src emacs-lisp
(setq org-wild-notifier-day-wide-alert-times nil)
#+end_src

View File

@ -1,5 +0,0 @@
# -*- mode: snippet -*-
# name: ign
# key: ign
# --
# type: ignore

View File

@ -1,5 +0,0 @@
# -*- mode: snippet -*-
# name: inp
# key: inp
# --
import numpy as np

View File

@ -1,5 +0,0 @@
# -*- mode: snippet -*-
# name: isa
# key: isa
# --
import sqlalchemy as sa

View File

@ -1,5 +0,0 @@
# -*- mode: snippet -*-
# name: logg
# key: logg
# --
logger = logging.getLogger(__name__)

View File

@ -1,5 +0,0 @@
# -*- mode: snippet -*-
# name: 401
# key: 401
# --
# noqa: F401

View File

@ -24,6 +24,7 @@ pom.xml
TAGS TAGS
# Vim # Vim
*.sw*
*.tmp* *.tmp*
# JavaScript # JavaScript

20
dotfiles/gtkrc-2.0 Normal file
View File

@ -0,0 +1,20 @@
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"

View File

@ -2,25 +2,18 @@
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", items_in_backlight_directory[0]) os.path.join("/sys/class/backlight", os.listdir("/sys/class/backlight")[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"),
@ -28,7 +21,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
@ -78,11 +71,6 @@ def build_parser():
if __name__ == '__main__': if __name__ == '__main__':
args = build_parser().parse_args() args = build_parser().parse_args()
symlink_path = os.readlink("/home/imalison/.config/brightness_manager/symlink") BrightnessManager.find_brightness().increment_by_proportion(float(args.change) / 100)
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(manager.current_proportion * 100)) print(int(IntelBrightnessManager.current_proportion * 100))

View File

@ -1,7 +0,0 @@
#!/usr/bin/env sh
function nr {
sk --ansi -i -c 'nix-search "{}"' | get_cols 1
}
nr "$@"

View File

@ -1,376 +0,0 @@
{
"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
}

View File

@ -1,208 +0,0 @@
{
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;
};
}

View File

@ -1,176 +0,0 @@
{
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);
};
}

View File

@ -1,2 +0,0 @@
switch:
nix run nix-darwin -- switch --flake .#

View File

@ -1,5 +1,5 @@
{ config, pkgs, forEachUser, makeEnable, realUsers, ... }: { config, pkgs, forEachUser, makeEnable, realUsers, ... }:
makeEnable config "myModules.base" true { makeEnable config "modules.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,7 +36,8 @@ makeEnable config "myModules.base" true {
}; };
# Audio # Audio
hardware.pulseaudio.enable = false; sound.enable = true;
hardware.pulseaudio.enable = true;
# Bluetooth # Bluetooth
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;
@ -70,5 +71,5 @@ makeEnable config "myModules.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 ++ ["gitea-runner"]; nix.settings.trusted-users = realUsers;
} }

View File

@ -1,17 +1,12 @@
{ pkgs, inputs, config, makeEnable, ... }: { pkgs, inputs, config, makeEnable, ... }:
makeEnable config "myModules.ben" true { makeEnable config "modules.ben" true {
home-manager.backupFileExtension = "backup"; # Add this line
home-manager.users.ben = { home-manager.users.ben = {
programs.zsh = { programs.zsh = {
enable = true; enable = true;
shellAliases = { shellAliases = {
l = "ls -CF"; ll = "ls -alF";
la = "ls -A"; la = "ls -A";
ll = "ls -lh"; l = "ls -CF";
lla = "ls -alh";
ls = "ls --color=auto";
gts = "git status";
gtl = "git log";
}; };
}; };
}; };

View File

@ -1,10 +1,10 @@
{ config, lib, ... }: { config, lib, ... }:
with lib; with lib;
let cfg = config.myModules.cache-server; let cfg = config.modules.cache-server;
in in
{ {
options = { options = {
myModules.cache-server = { modules.cache-server = {
enable = mkEnableOption "nix cache server"; enable = mkEnableOption "nix cache server";
port = mkOption { port = mkOption {
type = types.int; type = types.int;

View File

@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, ... }: { pkgs, config, makeEnable, ... }:
makeEnable config "myModules.code" true { makeEnable config "modules.code" true {
programs.direnv = { programs.direnv = {
enable = true; enable = true;
nix-direnv.enable = true; nix-direnv.enable = true;

View File

@ -19,13 +19,10 @@
./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
@ -45,17 +42,17 @@
}; };
config = lib.mkIf config.features.full.enable { config = lib.mkIf config.features.full.enable {
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.plasma.enable = true; modules.plasma.enable = true;
myModules.gnome.enable = false; modules.gnome.enable = false;
myModules.xmonad.enable = true; modules.xmonad.enable = true;
myModules.extra.enable = true; modules.extra.enable = true;
myModules.electron.enable = true; modules.electron.enable = true;
myModules.code.enable = true; modules.code.enable = true;
myModules.games.enable = true; modules.games.enable = true;
myModules.syncthing.enable = true; modules.syncthing.enable = true;
myModules.fonts.enable = true; modules.fonts.enable = true;
myModules.nixified-ai.enable = false; modules.nixified-ai.enable = false;
}; };
} }

View File

@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }: { config, pkgs, makeEnable, ... }:
makeEnable config "myModules.desktop" true { makeEnable config "modules.desktop" true {
imports = [ imports = [
./fonts.nix ./fonts.nix
]; ];
@ -34,7 +34,7 @@ makeEnable config "myModules.desktop" true {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# Appearance # Appearance
adwaita-icon-theme gnome.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 "myModules.desktop" true {
feh feh
firefox firefox
cheese gnome.cheese
gpaste gnome.gpaste
kleopatra kleopatra
libnotify libnotify
libreoffice libreoffice
@ -70,8 +70,9 @@ makeEnable config "myModules.desktop" true {
networkmanagerapplet networkmanagerapplet
notify-osd-customizable notify-osd-customizable
okular okular
picom
pinentry pinentry
mission-center psensor
quassel quassel
remmina remmina
rofi rofi
@ -81,10 +82,11 @@ makeEnable config "myModules.desktop" true {
simplescreenrecorder simplescreenrecorder
skippy-xd skippy-xd
synergy synergy
transmission_3-gtk transmission-gtk
vlc vlc
volnoti volnoti
xfce.thunar xfce.thunar
zulip
# Audio # Audio
picard picard
@ -103,6 +105,5 @@ makeEnable config "myModules.desktop" true {
spotify spotify
tor-browser-bundle-bin tor-browser-bundle-bin
vscode vscode
zulip
] else []); ] else []);
} }

View File

@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, forEachUser, ... }: { pkgs, config, makeEnable, forEachUser, ... }:
makeEnable config "myModules.electron" false { makeEnable config "modules.electron" false {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
element-desktop element-desktop
# bitwarden # bitwarden

View File

@ -29,25 +29,6 @@ with lib;
done done
fpath+="${pkgs.python-with-my-packages}/lib/python3.11/site-packages/argcomplete/bash_completion.d" fpath+="${pkgs.python-with-my-packages}/lib/python3.11/site-packages/argcomplete/bash_completion.d"
''; '';
interactiveShellInit = ''
eval "$(register-python-argcomplete prb)"
eval "$(register-python-argcomplete prod-prb)"
eval "$(register-python-argcomplete railbird)"
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
# Enable bracketed paste
autoload -Uz bracketed-paste-magic
zle -N bracketed-paste bracketed-paste-magic
'';
};
programs.bash = {
interactiveShellInit = ''
eval "$(register-python-argcomplete prb)"
eval "$(register-python-argcomplete prod-prb)"
eval "$(register-python-argcomplete railbird)"
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/bash"
'';
}; };
programs.starship = { programs.starship = {

View File

@ -5,7 +5,6 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
automake automake
bazel bazel
bento4
bind bind
binutils binutils
cachix cachix
@ -17,12 +16,13 @@
emacs emacs
fd fd
ffmpeg ffmpeg
bento4
file file
gawk gawk
gcc gcc
gdb gdb
git-fame
git-lfs git-lfs
git-fame
git-sync git-sync
gitFull gitFull
glxinfo glxinfo
@ -42,7 +42,6 @@
neofetch neofetch
neovim neovim
nix-index nix-index
nix-search-cli
pass pass
patchelf patchelf
pciutils pciutils
@ -52,9 +51,8 @@
rcm rcm
ripgrep ripgrep
silver-searcher silver-searcher
skim
sshfs
sysz sysz
sshfs
tmux tmux
tzupdate tzupdate
udiskie udiskie

View File

@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }: { config, pkgs, makeEnable, ... }:
makeEnable config "myModules.extra" false { makeEnable config "modules.extra" false {
services.expressvpn.enable = true; services.expressvpn.enable = true;
programs.hyprland.enable = true; programs.hyprland.enable = true;

View File

@ -8,35 +8,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1723293904, "lastModified": 1715290355,
"narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=", "narHash": "sha256-2T7CHTqBXJJ3ZC6R/4TXTcKoXWHcvubKNj9SfomURnw=",
"owner": "ryantm", "owner": "ryantm",
"repo": "agenix", "repo": "agenix",
"rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41", "rev": "8d37c5bdeade12b6479c85acd133063ab53187a0",
"type": "github"
},
"original": {
"owner": "ryantm",
"repo": "agenix",
"type": "github"
}
},
"agenix_2": {
"inputs": {
"darwin": "darwin_2",
"home-manager": "home-manager_3",
"nixpkgs": [
"railbird-secrets",
"nixpkgs"
],
"systems": "systems_4"
},
"locked": {
"lastModified": 1707830867,
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
"owner": "ryantm",
"repo": "agenix",
"rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -67,37 +43,14 @@
"type": "github" "type": "github"
} }
}, },
"darwin_2": {
"inputs": {
"nixpkgs": [
"railbird-secrets",
"agenix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1700795494,
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
"type": "github"
},
"original": {
"owner": "lnl7",
"ref": "master",
"repo": "nix-darwin",
"type": "github"
}
},
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1673956053,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -162,11 +115,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719994518, "lastModified": 1712014858,
"narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=", "narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7", "rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -217,45 +170,6 @@
"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": [
@ -263,11 +177,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1726560853, "lastModified": 1710146030,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -277,15 +191,12 @@
} }
}, },
"flake-utils_2": { "flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": { "locked": {
"lastModified": 1726560853, "lastModified": 1667395993,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -295,6 +206,24 @@
} }
}, },
"flake-utils_3": { "flake-utils_3": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": { "inputs": {
"systems": "systems_3" "systems": "systems_3"
}, },
@ -312,27 +241,9 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_4": {
"inputs": {
"systems": "systems_5"
},
"locked": {
"lastModified": 1709126324,
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_5": { "flake-utils_5": {
"inputs": { "inputs": {
"systems": "systems_7" "systems": "systems_5"
}, },
"locked": { "locked": {
"lastModified": 1685518550, "lastModified": 1685518550,
@ -350,7 +261,7 @@
}, },
"flake-utils_6": { "flake-utils_6": {
"inputs": { "inputs": {
"systems": "systems_8" "systems": "systems_6"
}, },
"locked": { "locked": {
"lastModified": 1681202837, "lastModified": 1681202837,
@ -414,37 +325,6 @@
"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": [
@ -621,7 +501,7 @@
"haskell-language-server": { "haskell-language-server": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_3", "flake-compat": "flake-compat_3",
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_4",
"fourmolu-011": "fourmolu-011", "fourmolu-011": "fourmolu-011",
"fourmolu-012": "fourmolu-012", "fourmolu-012": "fourmolu-012",
"gitignore": "gitignore", "gitignore": "gitignore",
@ -633,7 +513,7 @@
"lsp": "lsp", "lsp": "lsp",
"lsp-test": "lsp-test", "lsp-test": "lsp-test",
"lsp-types": "lsp-types", "lsp-types": "lsp-types",
"nixpkgs": "nixpkgs_8", "nixpkgs": "nixpkgs_6",
"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"
@ -668,7 +548,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_10", "nixpkgs": "nixpkgs_7",
"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"
@ -710,25 +590,6 @@
"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": {
@ -839,33 +700,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1727381010, "lastModified": 1715380449,
"narHash": "sha256-2PqUwnZXjYiPUm5A4d8Z31mvLS4lvUeV/9gUhSMmNR4=", "narHash": "sha256-716+f9Rj3wjSyD1xitCv2FcYbgPz1WIVDj+ZBclH99Y=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "853e7bd24f875bac2e3a0cf72f993e917d0f8cf5", "rev": "d7682620185f213df384c363288093b486b2883f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"railbird-secrets",
"agenix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1703113217,
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -920,16 +759,15 @@
"libgit2": { "libgit2": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1715853528, "lastModified": 1697646580,
"narHash": "sha256-J2rCxTecyLbbDdsyBWn9w7r3pbKRMkI9E7RvRgAqBdY=", "narHash": "sha256-oX4Z3S9WtJlwvj0uH9HlYcWv+x1hqp8mhXl7HsLu2f0=",
"owner": "libgit2", "owner": "libgit2",
"repo": "libgit2", "repo": "libgit2",
"rev": "36f7e21ad757a3dacc58cf7944329da6bc1d6e96", "rev": "45fd9ed7ae1a9b74b957ef4f337bc3c8b3df01b5",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "libgit2", "owner": "libgit2",
"ref": "v1.8.1",
"repo": "libgit2", "repo": "libgit2",
"type": "github" "type": "github"
} }
@ -1010,18 +848,17 @@
"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-23-11": "nixpkgs-23-11", "nixpkgs-regression": "nixpkgs-regression",
"nixpkgs-regression": "nixpkgs-regression" "pre-commit-hooks": "pre-commit-hooks"
}, },
"locked": { "locked": {
"lastModified": 1727380702, "lastModified": 1715361977,
"narHash": "sha256-1YUAqvZc9YOUERyPiaOGYEg2fIf20+yIWGhzB0Ke6j8=", "narHash": "sha256-j/PLYYGs+Gjge4JGYxMjOhWQEp+GB4Fdicetbpmp6n0=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nix", "repo": "nix",
"rev": "0ed67e5b7ee9ad8fae162e1b10b25d22ada2b1f3", "rev": "87ab3c0ea4e6f85e7b902050365bb75cf2836fbb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1053,16 +890,15 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1719989395, "lastModified": 1707802617,
"narHash": "sha256-AppMOCCJ6LYteg4mvlf0xQV+cc9a4iehRWxTOHewouA=", "narHash": "sha256-29HCocTg8aPr6gaY6VHNxJQpZQJ6GAqjFsKPqNFj5qo=",
"owner": "colonelpanic8", "owner": "colonelpanic8",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "a91e03ef13614285d5d476fbf2f096ce65de0a71", "rev": "cb96be8513e2959110c7f90ae5d61ca5aff35862",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "colonelpanic8", "owner": "colonelpanic8",
"ref": "add-g834jzr",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"type": "github" "type": "github"
} }
@ -1070,15 +906,15 @@
"nixos-wsl": { "nixos-wsl": {
"inputs": { "inputs": {
"flake-compat": "flake-compat_2", "flake-compat": "flake-compat_2",
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils_3",
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1727091786, "lastModified": 1715237610,
"narHash": "sha256-n36Vtdtx7tTTKFI9aoWxdNIlJ2dwxoitFDwcPXrS+Jk=", "narHash": "sha256-/ZeWQ4mL3DfHsbTZYc80qMrL4vBfENP0RiGv2KrCrEo=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "1fcec53c692c15091ca5bb9eaf86a2cac6c53278", "rev": "61fe33f4194bbbc48c090a2e79f4eb61b47c9b75",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1103,40 +939,6 @@
"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,
@ -1153,48 +955,33 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_10": { "nixpkgs-regression_2": {
"locked": { "locked": {
"lastModified": 1686874404, "lastModified": 1715484633,
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=", "narHash": "sha256-Es5etYksi9VsAZSBKZe4rdyi9L000MEx9lFb3TF6Eo8=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "efc10371d5c5b8d2d58bab6c1100753efacfe550", "rev": "25e9a6d07dd142bafd94603208a59c107e8f2905",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "haskell-updates",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_11": {
"locked": {
"lastModified": 1682134069,
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "fd901ef4bf93499374c5af385b2943f5801c0833",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1723688146, "lastModified": 1709083642,
"narHash": "sha256-sqLwJcHYeWLOeP/XoLwAtYjr01TISlkOfz+NG82pbdg=", "narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c3d4ac725177c030b1e289015989da2ad9d56af0", "rev": "b550fe4b4776908ac2a861124307045f8e717c8e",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-24.05", "ref": "release-23.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -1217,27 +1004,27 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1726838390, "lastModified": 1714782413,
"narHash": "sha256-NmcVhGElxDbmEWzgXsyAjlRhUus/nEqPC5So7BOJLUM=", "narHash": "sha256-tbg0MEuKaPcUrnmGCu4xiY5F+7LW2+ECPKVAJd2HLwM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "944b2aea7f0a2d7c79f72468106bc5510cbf5101", "rev": "651b4702e27a388f0f18e1b970534162dec09aff",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-24.05", "ref": "nixos-23.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1727122398, "lastModified": 1715266358,
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=", "narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093", "rev": "f1010e0469db743d14519a1efd37e23f8513d714",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1248,38 +1035,6 @@
} }
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": {
"lastModified": 1697723726,
"narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_7": {
"locked": {
"lastModified": 1703255338,
"narHash": "sha256-Z6wfYJQKmDN9xciTwU3cOiOk+NElxdZwy/FiHctCzjU=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "6df37dc6a77654682fe9f071c62b4242b5342e04",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1686874404, "lastModified": 1686874404,
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=", "narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
@ -1295,41 +1050,34 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_9": { "nixpkgs_7": {
"locked": { "locked": {
"lastModified": 1709703039, "lastModified": 1686874404,
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=", "narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d", "rev": "efc10371d5c5b8d2d58bab6c1100753efacfe550",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-unstable", "ref": "haskell-updates",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixtheplanet": { "nixpkgs_8": {
"inputs": {
"flake-parts": "flake-parts_4",
"hercules-ci-effects": "hercules-ci-effects_2",
"nixpkgs": "nixpkgs_7",
"osx-kvm": "osx-kvm"
},
"locked": { "locked": {
"lastModified": 1727105240, "lastModified": 1682134069,
"narHash": "sha256-FEuqbcZ4TDUMwCpTA/E3J5L7pLD4U+zXPnZbmXSmaJo=", "narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
"owner": "matthewcroughan", "owner": "NixOS",
"repo": "nixtheplanet", "repo": "nixpkgs",
"rev": "2f622af217807da78e44a5a15f620743dac57f46", "rev": "fd901ef4bf93499374c5af385b2943f5801c0833",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "matthewcroughan", "id": "nixpkgs",
"repo": "nixtheplanet", "type": "indirect"
"type": "github"
} }
}, },
"notifications-tray-icon": { "notifications-tray-icon": {
@ -1407,40 +1155,36 @@
"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"
} }
}, },
"osx-kvm": { "pre-commit-hooks": {
"flake": false,
"locked": {
"lastModified": 1701316418,
"narHash": "sha256-Sk8LYhFovoMX1ln7DWYArJQphW2a4h8Xg7/ZEZXwZv4=",
"owner": "kholia",
"repo": "OSX-KVM",
"rev": "09daff670a7eb9ff616073df329586c5995623a9",
"type": "github"
},
"original": {
"owner": "kholia",
"repo": "OSX-KVM",
"type": "github"
}
},
"railbird-secrets": {
"inputs": { "inputs": {
"agenix": "agenix_2", "flake-compat": [
"flake-utils": "flake-utils_4", "nix"
"nixpkgs": "nixpkgs_9" ],
"flake-utils": "flake-utils_2",
"gitignore": [
"nix"
],
"nixpkgs": [
"nix",
"nixpkgs"
],
"nixpkgs-stable": [
"nix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1726075726, "lastModified": 1712897695,
"narHash": "sha256-eQPDAzUJg8fwqiCyWsKxtHV+G1LGJKs9X3ZtOzytuDE=", "narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=",
"ref": "refs/heads/master", "owner": "cachix",
"rev": "70d8ffd3f3b79b97477ae0655524273bb098b6c5", "repo": "pre-commit-hooks.nix",
"revCount": 86, "rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8",
"type": "git", "type": "github"
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
}, },
"original": { "original": {
"type": "git", "owner": "cachix",
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git" "repo": "pre-commit-hooks.nix",
"type": "github"
} }
}, },
"root": { "root": {
@ -1457,11 +1201,10 @@
"nixos-hardware": "nixos-hardware", "nixos-hardware": "nixos-hardware",
"nixos-wsl": "nixos-wsl", "nixos-wsl": "nixos-wsl",
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_5",
"nixtheplanet": "nixtheplanet", "nixpkgs-regression": "nixpkgs-regression_2",
"notifications-tray-icon": "notifications-tray-icon", "notifications-tray-icon": "notifications-tray-icon",
"railbird-secrets": "railbird-secrets",
"status-notifier-item": "status-notifier-item", "status-notifier-item": "status-notifier-item",
"systems": "systems_6", "systems": "systems_4",
"taffybar": "taffybar", "taffybar": "taffybar",
"vscode-server": "vscode-server", "vscode-server": "vscode-server",
"xmonad": "xmonad", "xmonad": "xmonad",
@ -1637,36 +1380,6 @@
"type": "github" "type": "github"
} }
}, },
"systems_7": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_8": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"taffybar": { "taffybar": {
"inputs": { "inputs": {
"flake-utils": [ "flake-utils": [
@ -1700,7 +1413,6 @@
}, },
"original": { "original": {
"owner": "taffybar", "owner": "taffybar",
"ref": "old-master",
"repo": "taffybar", "repo": "taffybar",
"type": "github" "type": "github"
} }
@ -1724,11 +1436,11 @@
}, },
"unstable": { "unstable": {
"locked": { "locked": {
"lastModified": 1727122398, "lastModified": 1715266358,
"narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=", "narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093", "rev": "f1010e0469db743d14519a1efd37e23f8513d714",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1741,7 +1453,7 @@
"vscode-server": { "vscode-server": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_6", "flake-utils": "flake-utils_6",
"nixpkgs": "nixpkgs_11" "nixpkgs": "nixpkgs_8"
}, },
"locked": { "locked": {
"lastModified": 1713958148, "lastModified": 1713958148,
@ -1771,11 +1483,11 @@
"unstable": "unstable" "unstable": "unstable"
}, },
"locked": { "locked": {
"lastModified": 1726451364, "lastModified": 1714229485,
"narHash": "sha256-6WKgYq0+IzPSXxVl1MfODIVwEbd3Sw0zc5sMSOyzA8I=", "narHash": "sha256-AOy87dJL0T9wSe1kM0tTzFlV++JwmoGW4BfBXzIUbsI=",
"owner": "xmonad", "owner": "xmonad",
"repo": "xmonad", "repo": "xmonad",
"rev": "a4140b93497333ec7f3127ee4dabcb8ae8a721b6", "rev": "cde1a25bca9b7aeeb24af73588221f5f54ae770b",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -1,10 +1,6 @@
{ {
inputs = { inputs = {
nixtheplanet.url = "github:matthewcroughan/nixtheplanet"; nixos-hardware = { url = "github:colonelpanic8/nixos-hardware"; };
railbird-secrets = {
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
};
nixos-hardware = { url = "github:colonelpanic8/nixos-hardware/add-g834jzr"; };
nixpkgs = { nixpkgs = {
url = "github:NixOS/nixpkgs/nixos-unstable"; url = "github:NixOS/nixpkgs/nixos-unstable";
@ -35,7 +31,7 @@
}; };
taffybar = { taffybar = {
url = "github:taffybar/taffybar/old-master"; url = "github:taffybar/taffybar";
inputs = { inputs = {
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
flake-utils.follows = "flake-utils"; flake-utils.follows = "flake-utils";
@ -105,6 +101,8 @@
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"; };
@ -113,7 +111,7 @@
}; };
outputs = inputs@{ outputs = inputs@{
self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad, nixtheplanet, self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad,
xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ... xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ...
}: }:
let let
@ -125,7 +123,7 @@
name = machineNameFromFilename filename; name = machineNameFromFilename filename;
value = { value = {
modules = [ modules = [
(machinesFilepath + ("/" + filename)) agenix.nixosModules.default nixtheplanet.nixosModules.macos-ventura (machinesFilepath + ("/" + filename)) agenix.nixosModules.default
]; ];
}; };
}; };
@ -154,10 +152,7 @@
inherit inputs machineNames; inherit inputs machineNames;
makeEnable = (import ./make-enable.nix) nixpkgs.lib; makeEnable = (import ./make-enable.nix) nixpkgs.lib;
keys = (import ./keys.nix); keys = (import ./keys.nix);
usersInfo = (import ./users.nix) { usersInfo = (import ./users.nix) { pkgs = { zsh = "zsh"; }; keys = keys; };
pkgs = { zsh = "zsh"; };
inherit keys inputs system;
};
realUsers = (builtins.attrNames realUsers = (builtins.attrNames
(nixpkgs.lib.filterAttrs (nixpkgs.lib.filterAttrs
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users) (_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)

View File

@ -1,5 +1,5 @@
{ pkgs, makeEnable, config, ... }: { pkgs, makeEnable, config, ... }:
makeEnable config "myModules.fonts" true { makeEnable config "modules.fonts" true {
# Enable the gtk icon cache # Enable the gtk icon cache
gtk.iconCache.enable = true; gtk.iconCache.enable = true;

View File

@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }: { config, pkgs, makeEnable, ... }:
makeEnable config "myModules.games" false { makeEnable config "modules.games" false {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
steam steam
# heroic # heroic

View File

@ -1,7 +1,7 @@
{ pkgs, config, makeEnable, ... }: { pkgs, config, makeEnable, ... }:
makeEnable config "myModules.gitea-runner" false { makeEnable config "modules.gitea-runner" false {
age.secrets.gitea-runner-token = { age.secrets.gitea-runner-token = {
file = ./secrets/gitea-runner-token.age; file = ./secrets/gitea-runner-token.${config.networking.hostName}.age;
group = "docker"; group = "docker";
}; };

View File

@ -1,5 +1,5 @@
{ config, makeEnable, ... }: { config, makeEnable, ... }:
makeEnable config "myModules.gitea" false { makeEnable config "modules.gitea" false {
services.gitea = { services.gitea = {
enable = true; enable = true;
@ -13,7 +13,6 @@ makeEnable config "myModules.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;

View File

@ -1,5 +1,5 @@
{ config, makeEnable, ... }: { config, makeEnable, ... }:
makeEnable config "myModules.gnome" false { makeEnable config "modules.gnome" false {
services.xserver = { services.xserver = {
desktopManager.gnome.enable = true; desktopManager.gnome.enable = true;
displayManager.gdm.enable = true; displayManager.gdm.enable = true;

View File

@ -1,4 +1,4 @@
{ pkgs, ... }: { pkgs, config, specialArgs, ... }:
{ {
xsession = { xsession = {
enable = true; enable = true;

View File

@ -1,96 +0,0 @@
{
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;
};
};
};
}

View File

@ -1,11 +1,10 @@
{ pkgs, inputs, config, makeEnable, ... }: { pkgs, inputs, config, makeEnable, ... }:
makeEnable config "myModules.kat" false { makeEnable config "modules.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 = ''

View File

@ -23,7 +23,6 @@ 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"
@ -56,6 +55,4 @@ rec {
benKeys = [ benKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
]; ];
interviewKeys = [
];
} }

View File

@ -1,23 +0,0 @@
-----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-----

View File

@ -1,22 +0,0 @@
{ 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
'';
};
}

View File

@ -6,16 +6,16 @@
inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia
]; ];
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.xmonad.enable = true; modules.xmonad.enable = true;
myModules.extra.enable = false; modules.extra.enable = false;
myModules.code.enable = true; modules.code.enable = true;
myModules.games.enable = false; modules.games.enable = false;
myModules.syncthing.enable = true; modules.syncthing.enable = true;
myModules.fonts.enable = true; modules.fonts.enable = true;
myModules.nixified-ai.enable = false; modules.nixified-ai.enable = false;
myModules.gitea-runner.enable = false; modules.gitea-runner.enable = false;
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;

View File

@ -8,10 +8,10 @@
sublime sublime
vlc vlc
]; ];
myModules.desktop.enable = false; modules.desktop.enable = false;
myModules.plasma.enable = false; modules.plasma.enable = false;
imalison.nixOverlay.enable = false; imalison.nixOverlay.enable = false;
myModules.wsl.enable = true; modules.wsl.enable = true;
networking.hostName = "bencbox"; networking.hostName = "bencbox";
@ -21,19 +21,4 @@
home-manager.users = forEachUser { home-manager.users = forEachUser {
home.stateVersion = "22.05"; home.stateVersion = "22.05";
}; };
users.users.ben = {
extraGroups = [
"audio"
"adbusers"
"disk"
"docker"
"networkmanager"
"openrazer"
"plugdev"
"syncthing"
"systemd-journal"
"video"
] ++ ["wheel"];
};
} }

View File

@ -13,31 +13,25 @@ in
extraGroups = ["syncthing"]; extraGroups = ["syncthing"];
}; };
myModules.raspberry-pi.enable = true; modules.raspberry-pi.enable = true;
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.xmonad.enable = false; modules.xmonad.enable = false;
myModules.extra.enable = false; modules.extra.enable = false;
myModules.code.enable = true; modules.code.enable = true;
myModules.games.enable = false; modules.games.enable = false;
myModules.syncthing.enable = true; modules.syncthing.enable = true;
myModules.fonts.enable = true; modules.fonts.enable = true;
myModules.nixified-ai.enable = false; modules.nixified-ai.enable = false;
myModules.cache-server = { modules.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";
}; };
myModules.gitea.enable = true; modules.gitea.enable = true;
myModules.gitea-runner.enable = false; modules.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;
@ -91,16 +85,6 @@ in
''; '';
}; };
}; };
"docs.railbird.ai" = {
enableACME = true;
forceSSL = true;
root = "/var/lib/syncthing/railbird/docs";
locations."/" = {
extraConfig = ''
autoindex on;
'';
};
};
}; };
}; };
@ -114,7 +98,7 @@ in
}; };
services.home-assistant = { services.home-assistant = {
enable = false; enable = true;
extraComponents = [ extraComponents = [
# Components required to complete the onboarding # Components required to complete the onboarding
"met" "met"

View File

@ -5,10 +5,10 @@
]; ];
services.xserver.enable = true; services.xserver.enable = true;
environment.systemPackages = with pkgs; [sublime]; environment.systemPackages = with pkgs; [sublime];
myModules.desktop.enable = false; modules.desktop.enable = false;
myModules.plasma.enable = false; modules.plasma.enable = false;
imalison.nixOverlay.enable = false; imalison.nixOverlay.enable = false;
myModules.wsl.enable = true; modules.wsl.enable = true;
networking.hostName = "dean-zephyrus"; networking.hostName = "dean-zephyrus";

View File

@ -1,19 +1,19 @@
{ config, lib, pkgs, forEachUser, ... }: { config, lib, pkgs, ... }:
{ {
imports = [ imports = [
../configuration.nix ../configuration.nix
]; ];
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.xmonad.enable = false; modules.xmonad.enable = true;
myModules.extra.enable = false; modules.extra.enable = false;
myModules.code.enable = true; modules.code.enable = true;
myModules.games.enable = false; modules.games.enable = false;
myModules.syncthing.enable = true; modules.syncthing.enable = true;
myModules.fonts.enable = true; modules.fonts.enable = true;
myModules.nixified-ai.enable = false; modules.nixified-ai.enable = false;
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
@ -34,15 +34,29 @@
services.xserver.libinput.enable = true; services.xserver.libinput.enable = true;
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/36864608-8e74-42b8-a075-27b59ef2701d"; device = "/dev/disk/by-uuid/58218a04-3ba1-4295-86bb-ada59f75e3b6";
fsType = "ext4"; fsType = "ext4";
}; };
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/8142784e-45c6-4a2b-91f1-09df741ac00f";
fileSystems."/boot" = { fileSystems."/boot" = {
device = "/dev/disk/by-uuid/36E1-BE93"; device = "/dev/disk/by-uuid/36E1-BE93";
fsType = "vfat"; fsType = "vfat";
}; };
systemd.services.resume-fix = {
description = "Fixes acpi immediate resume after suspend";
wantedBy = [ "multi-user.target" "post-resume.target" ];
after = [ "multi-user.target" "post-resume.target" ];
script = ''
if ${pkgs.gnugrep}/bin/grep -q '\bXHC\b.*\benabled\b' /proc/acpi/wakeup; then
echo XHC > /proc/acpi/wakeup
fi
'';
serviceConfig.Type = "oneshot";
};
swapDevices = [ swapDevices = [
{ {
device = "/swapfile"; device = "/swapfile";
@ -51,12 +65,10 @@
} }
]; ];
networking.hostName = "david-blade"; networking.hostName = "ivanm-dfinity-razer";
home-manager.users = forEachUser { nix.settings.maxJobs = lib.mkDefault 12;
home.stateVersion = "24.05";
};
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
system.stateVersion = "24.05"; system.stateVersion = "18.03";
} }

View File

@ -5,7 +5,7 @@
]; ];
imalison.nixOverlay.enable = false; imalison.nixOverlay.enable = false;
myModules.wsl.enable = true; modules.wsl.enable = true;
networking.hostName = "jay-lenovo-wsl"; networking.hostName = "jay-lenovo-wsl";

View File

@ -11,7 +11,6 @@
android-studio android-studio
linuxPackages_latest.perf linuxPackages_latest.perf
zenmonitor zenmonitor
code-cursor
]; ];
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
@ -27,7 +26,7 @@
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
myModules.postgres.enable = true; modules.postgres.enable = true;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;

View File

@ -5,24 +5,23 @@
../configuration.nix ../configuration.nix
]; ];
myModules.railbird-k3s = { modules.base.enable = true;
enable = true; modules.desktop.enable = true;
serverAddr = "https://ryzen-shine.local:6443"; modules.xmonad.enable = true;
}; modules.extra.enable = false;
myModules.base.enable = true; modules.code.enable = true;
myModules.desktop.enable = true; modules.games.enable = false;
myModules.xmonad.enable = true; modules.syncthing.enable = true;
myModules.extra.enable = false; modules.fonts.enable = true;
myModules.code.enable = true; modules.nixified-ai.enable = false;
myModules.games.enable = false; modules.gitea-runner.enable = true;
myModules.syncthing.enable = true; modules.postgres.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" ];
@ -46,10 +45,6 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = [
{ device = "/dev/disk/by-uuid/598e9aa1-4940-4410-a2fa-3dfd8b7d2c0d"; }
];
home-manager.users = forEachUser { home-manager.users = forEachUser {
home.stateVersion = "23.11"; home.stateVersion = "23.11";
}; };

View File

@ -4,25 +4,13 @@
../configuration.nix ../configuration.nix
]; ];
services.macos-ventura = {
enable = true;
openFirewall = true;
vncListenAddr = "0.0.0.0";
};
features.full.enable = true; features.full.enable = true;
myModules.cache-server = { modules.cache-server = {
enable = true; enable = true;
port = 3090; port = 3090;
}; };
myModules.gitea-runner.enable = true; modules.gitea-runner.enable = true;
myModules.vscode.enable = true; modules.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";
@ -33,6 +21,15 @@
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

View File

@ -12,36 +12,58 @@
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;
services.k3s.role = "agent"; hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
services.k3s.extraFlags = lib.mkForce ["--node-label nixos-nvidia-cdi=enabled"]; hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
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;
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.xmonad.enable = false; modules.xmonad.enable = false;
myModules.code.enable = true; modules.gnome.enable = true;
myModules.syncthing.enable = true; modules.code.enable = true;
myModules.fonts.enable = true; modules.syncthing.enable = true;
myModules.plasma.enable = true; modules.fonts.enable = true;
myModules.nvidia.enable = true; modules.plasma.enable = false;
myModules.gitea-runner.enable = true; modules.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";
@ -65,7 +87,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";
}; };

View File

@ -6,17 +6,14 @@
]; ];
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
myModules.xmonad.picom.vSync.enable = false; modules.xmonad.picom.vSync.enable = false;
myModules.cache-server = { modules.cache-server = {
enable = true; enable = true;
port = 3090; port = 3090;
}; };
myModules.gitea-runner.enable = true; modules.gitea-runner.enable = true;
myModules.postgres.enable = true; modules.postgres.enable = true;
myModules.railbird-k3s.enable = true;
boot.loader.systemd-boot.configurationLimit = 5; boot.loader.systemd-boot.configurationLimit = 5;
@ -48,15 +45,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.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ]; hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ]; hardware.opengl.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.graphics.enable32Bit = true; hardware.opengl.driSupport32Bit = true;
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
@ -77,7 +74,7 @@
options = [ "nofail" ]; options = [ "nofail" ];
}; };
swapDevices = [ swapDevices =[
{ device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; } { device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; }
]; ];

View File

@ -1,34 +0,0 @@
{ lib, pkgs, config, inputs, forEachUser, ... }:
{
imports = [
../configuration.nix
];
myModules.wsl.enable = true;
networking.hostName = "strixi-minaj-wsl";
wsl.defaultUser = "imalison";
system.stateVersion = "23.11"; # Did you read the comment?
home-manager.users = forEachUser {
home.stateVersion = "23.11";
};
programs.gnupg = {
agent = {
pinentryPackage = pkgs.pinentry-curses;
enable = true;
enableSSHSupport = true;
};
};
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u"
"electron-12.2.3"
"etcher"
"electron-19.1.9"
"openssl-1.1.1w"
"nix-2.16.2"
];
}

View File

@ -3,20 +3,18 @@
{ {
imports = [ imports = [
../configuration.nix ../configuration.nix
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
]; ];
hardware.nvidia.open = false; 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;
@ -25,15 +23,21 @@
]; ];
services.xserver.dpi = 96; services.xserver.dpi = 96;
boot.kernelPackages = pkgs.linuxPackages_testing; boot.kernelPackages = pkgs.linuxPackages_latest;
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 = [ ];
hardware.graphics = { services.xserver = {
enable = true; videoDrivers = [ "nvidia" ];
enable32Bit = true;
}; };
hardware.opengl = {
enable = true;
driSupport = 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;

View File

@ -18,7 +18,6 @@
}; };
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 = ''
@ -30,11 +29,9 @@
keep-derivations = true; keep-derivations = true;
substituters = [ substituters = [
"https://cache.nixos.org" "https://cache.nixos.org"
"https://cuda-maintainers.cachix.org"
]; ];
trusted-public-keys = [ trusted-public-keys = [
"cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A=" "cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A="
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
]; ];
nix-path = nixPath; nix-path = nixPath;
}; };

View File

@ -1,5 +1,5 @@
{ inputs, config, specialArgs, ... }: { inputs, config, specialArgs, ... }:
specialArgs.makeEnable config "myModules.nixified-ai" false { specialArgs.makeEnable config "modules.nixified-ai" false {
imports = [ imports = [
inputs.nixified-ai.nixosModules.invokeai inputs.nixified-ai.nixosModules.invokeai
]; ];

View File

@ -1,18 +0,0 @@
{ 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" ];
};
}

View File

@ -1,6 +1,6 @@
{ lib, ... }: { { lib, ... }: {
options = { options = {
myModules.xmonad.picom.vSync.enable = lib.mkOption { modules.xmonad.picom.vSync.enable = lib.mkOption {
default = true; default = true;
type = lib.types.bool; type = lib.types.bool;
}; };

View File

@ -17,16 +17,15 @@ 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 final.gnugrep.pcre2 final.libpcre]; nativeBuildInputs = old.nativeBuildInputs ++ [final.pcre];
# buildInputs = old.buildInputs ++ [final.pcre]; });
# });
expressvpn = prev.expressvpn.overrideAttrs (_: { expressvpn = prev.expressvpn.overrideAttrs (_: {
src = prev.fetchurl { src = prev.fetchurl {

View File

@ -1,5 +1,5 @@
{ config, makeEnable, ... }: { config, makeEnable, ... }:
makeEnable config "myModules.plasma" true { makeEnable config "modules.plasma" true {
services.displayManager.sddm.enable = true; services.displayManager.sddm.enable = true;
services.xserver = { services.xserver = {
desktopManager.plasma5.enable = true; desktopManager.plasma5.enable = true;

View File

@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, realUsers, ... }: { pkgs, config, makeEnable, realUsers, ... }:
makeEnable config "myModules.postgres" true { makeEnable config "modules.postgres" true {
services.postgresql = { services.postgresql = {
enable = true; enable = true;
package = pkgs.postgresql_15; package = pkgs.postgresql_15;

View File

@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, realUsers, ... }: { pkgs, config, makeEnable, realUsers, ... }:
makeEnable config "myModules.rabbitmq" true { makeEnable config "modules.rabbitmq" true {
services.rabbitmq = { services.rabbitmq = {
enable = true; enable = true;
}; };

View File

@ -1,25 +0,0 @@
-----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-----

View File

@ -1,6 +1,6 @@
{ config, pkgs, inputs, makeEnable, ... }: { config, pkgs, inputs, makeEnable, ... }:
makeEnable config "myModules.raspberry-pi" false { makeEnable config "modules.raspberry-pi" false {
imports = [ imports = [
inputs.nixos-hardware.nixosModules.raspberry-pi-4 inputs.nixos-hardware.nixosModules.raspberry-pi-4
]; ];
@ -12,7 +12,6 @@ makeEnable config "myModules.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"

View File

@ -1,51 +0,0 @@
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!

View File

@ -1,50 +0,0 @@
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%­Â¾Ó<C2BE>BSWõ²Õ½ñ0¼ÿ¯=¢‡-Jt•ÌO<C38C>õšï<C5A1>ç€É9èp_Kd¬

Binary file not shown.

Binary file not shown.

View File

@ -10,11 +10,5 @@ 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;
} }

View File

@ -1,6 +1,5 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
security.pam.sshAgentAuth.enable = true;
services.avahi = { services.avahi = {
enable = true; enable = true;
nssmdns4 = true; nssmdns4 = true;
@ -20,15 +19,13 @@
services.openssh = { services.openssh = {
enable = true; enable = true;
settings = { settings = {
AllowAgentForwarding = true;
AllowTcpForwarding = true;
PasswordAuthentication = false; PasswordAuthentication = false;
X11Forwarding = true; X11Forwarding = true;
}; };
}; };
programs.ssh = { programs.ssh = {
forwardX11 = false; forwardX11 = true;
setXAuthLocation = true; setXAuthLocation = true;
knownHosts = { knownHosts = {
github = { github = {

View File

@ -17,12 +17,10 @@ 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 "myModules.syncthing" true { makeEnable config "modules.syncthing" true {
system.activationScripts.syncthingPermissions = { system.activationScripts.syncthingPermissions = {
text = '' text = ''
chown -R syncthing:syncthing /var/lib/syncthing chown -R syncthing:syncthing /var/lib/syncthing

View File

@ -1,4 +1,4 @@
{ pkgs, keys, inputs, system, ... }: { pkgs, keys, ... }:
let let
extraGroups = [ extraGroups = [
"audio" "audio"
@ -89,16 +89,6 @@ in
name = "ben"; name = "ben";
openssh.authorizedKeys.keys = benKeys ++ kanivanKeys; openssh.authorizedKeys.keys = benKeys ++ kanivanKeys;
}; };
railbird = userDefaults // {
inherit extraGroups;
name = "railbird";
openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.railbirdFullstackDevKeys;
};
interview = userDefaults // {
inherit extraGroups;
name = "interview";
openssh.authorizedKeys.keys = interviewKeys ++ inputs.railbird-secrets.keys.railbirdFullstackDevKeys;
};
}; };
nix.sshServe = { nix.sshServe = {

View File

@ -1,5 +1,5 @@
{ inputs, config, makeEnable, forEachUser, ... }: { inputs, config, makeEnable, forEachUser, ... }:
makeEnable config "myModules.vscode" true { makeEnable config "modules.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;

View File

@ -1,21 +1,19 @@
{ config, inputs, pkgs, makeEnable, ... }: { config, inputs, pkgs, makeEnable, ... }:
makeEnable config "myModules.wsl" false { makeEnable config "modules.wsl" false {
imports = [ imports = [
inputs.nixos-wsl.nixosModules.wsl inputs.nixos-wsl.nixosModules.wsl
]; ];
myModules.base.enable = false; modules.base.enable = false;
myModules.desktop.enable = false; modules.desktop.enable = false;
myModules.xmonad.enable = false; modules.xmonad.enable = false;
myModules.plasma.enable = false;
# Update timezone automatically # Update timezone automatically
services.tzupdate.enable = true; services.tzupdate.enable = true;
wsl.wslConf.automount.root = "/mnt";
wsl = { wsl = {
enable = true; enable = true;
automountPath = "/mnt";
startMenuLaunchers = true; startMenuLaunchers = true;
nativeSystemd = true; nativeSystemd = true;
}; };

View File

@ -1,5 +1,5 @@
{ config, pkgs, inputs, forEachUser, makeEnable, ... }: { config, pkgs, inputs, forEachUser, makeEnable, ... }:
makeEnable config "myModules.xmonad" true { makeEnable config "modules.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 "myModules.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 "myModules.xmonad" true {
services.picom = { services.picom = {
enable = true; enable = true;
vSync = config.myModules.xmonad.picom.vSync.enable; vSync = config.modules.xmonad.picom.vSync.enable;
backend = "glx"; backend = "glx";
extraArgs = ["--experimental-backends"]; extraArgs = ["--experimental-backends"];
@ -137,21 +137,21 @@ makeEnable config "myModules.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 = {