78 Commits

Author SHA1 Message Date
a493a530be [NixOS] k3s draft 2024-09-30 00:05:50 -06:00
01361b7217 [NixOS] Kubelet->gke kind of works but not really 2024-09-29 17:28:42 -06:00
cdd8ed60e9 [NixOS] Get kubelet partially working 2024-09-28 21:45:25 -06:00
fd033ba72c [NixOS] Add bencbox to syncthing 2024-09-27 19:45:57 -06:00
9aae7c0c16 [NixOS] Remove old virtualization style 2024-09-27 19:37:23 -06:00
aa9be16abf [NixOS] Add macos virtualmachine to nixquick 2024-09-27 14:28:23 -06:00
342fc4f4c6 [NixOS] Use nvidia module for nixquick 2024-09-27 14:23:32 -06:00
d62d538562 [NixOS] Put nvidia configuration into a file 2024-09-27 13:09:45 -06:00
ffb55c157b [NixOS] Fix deprecations in nixquick.nix 2024-09-26 15:43:37 -06:00
cd7698bebf [NixOS] Remove picom overlay for now 2024-09-26 15:26:26 -06:00
700cccfd60 [NixOS] Switch to pipewire and other fixes 2024-09-26 14:25:48 -06:00
814966b172 [Emacs] Disable indent-bars 2024-09-26 14:15:51 -06:00
c4a9a60112 [NixOS] modules -> myModules 2024-09-26 14:15:27 -06:00
9b9da29b7a [NixOS] Enable nvidia-container-toolkit 2024-09-26 11:16:58 -06:00
6cced9dad4 [NixOS] Enable nvidia dockerisation 2024-09-26 11:14:33 -06:00
50542d9b24 [NixOS] Enable kat on nixquick 2024-09-07 18:21:58 +00:00
701e8d7d82 With cursor 2024-08-31 17:03:08 +00:00
10b8f61d27 [NixOS] Picom is only needed for xmonad 2024-08-20 00:43:37 -06:00
58432fe908 [NixOS] Host docs.railbird.ai 2024-08-19 14:32:48 -06:00
79908fae93 [NixOS] Add ryzen-shine kubernetes token 2024-08-18 15:32:36 -06:00
b597b6e239 [Emacs] Use rubocop in ruby-mode 2024-08-18 15:32:10 -06:00
9e8cd58d7f [nix-darwin] Add gitea-runner token for mac-demarco-mini 2024-08-15 01:52:05 -06:00
6643428fca Revert "[NixOS] Use yshui's picom version from git"
This reverts commit 6cb9597df7.
2024-08-14 01:33:19 -06:00
10a732ad75 [taffybar] Bump version 2024-08-11 17:54:49 -06:00
e6a75734fb [NixOS] [zsh] Enable bracketed-paste-magic 2024-08-11 17:54:03 -06:00
eb22968ab4 [NixOS] Package renames 2024-08-11 17:52:53 -06:00
b12f84c007 [NixOS] Bump nixpkgs version 2024-08-11 17:52:37 -06:00
54645ba497 [NixOS] Fix deprecated option use in ryzen-shine 2024-08-11 17:52:17 -06:00
6cb9597df7 [NixOS] Use yshui's picom version from git 2024-08-11 17:51:56 -06:00
51e6116100 [Emacs] Search hidden files when doing directory based consult-rg search 2024-08-10 12:40:01 -06:00
4fd99eae63 [NixOS] Add interview user 2024-08-09 12:41:32 -06:00
b8f2452d11 [NixOS] Add ns function for incrementally searching through nixpkgs 2024-08-04 22:21:13 -06:00
ddb4a257cf Add nix-darwin justfile 2024-08-04 22:20:33 -06:00
Kat
3a6c9fbb49 Add nix-darwin 2024-08-04 22:20:33 -06:00
Kat
f3b8a769c6 [Emacs] Add swift-mode 2024-08-04 22:20:33 -06:00
4a27118f24 Delete travis 2024-08-04 22:20:33 -06:00
7ddc215dcc [Emacs] Remove indent-guide 2024-08-04 22:02:59 -06:00
3559edb3a5 [git] Don't ignore .sw* files (swift) 2024-07-28 14:20:58 -06:00
0e611dbb57 Fix location of DISABLE_REGISTRATION 2024-07-20 01:18:56 -06:00
3a71c8600c [NixOS] Remove sound.enable 2024-07-18 15:57:42 -06:00
280debd530 [NixOS] Disable gitea registration 2024-07-18 15:55:59 -06:00
e34248ede3 [NixOS] Add dean to syncthing 2024-07-18 14:09:37 -06:00
ea3ba8e2d6 [Emacs] Replace highlight-indent-guides with indent-bars 2024-07-11 01:44:13 -06:00
69411c14f6 [NixOS] Use testing kernel on strixi-minaj to fix audio 2024-07-04 12:44:23 -06:00
f560d87aa3 [linux] Allow selection of specific path for case where multiple brightness paths 2024-07-03 22:49:29 -06:00
e188936253 [NixOS] Use module from nixos-hardware for strixy-minaj 2024-07-03 02:12:56 -06:00
f91ff8c987 Revert "[NixOS] Use intel drivers on strixi-minaj"
This reverts commit 204569fff1.
2024-07-03 02:12:56 -06:00
f4b87c40eb Remove gtkrc 2024-07-02 17:19:51 -06:00
26fb168ec5 [NixOS] Set backup extension for home-manager 2024-07-02 17:18:03 -06:00
16e6b980ba [NixOS] Flake update past ssh issue 2024-07-01 22:45:03 -06:00
204569fff1 [NixOS] Use intel drivers on strixi-minaj 2024-07-01 22:44:44 -06:00
fb671d1401 [NixOS] Disable home-assistant 2024-06-13 04:49:59 +00:00
a18188d3b1 [NixOS] Fix zulip only works on x86 2024-06-12 21:09:50 -06:00
4515ea2e05 [NixOS] Allow dev keys for railbird user 2024-06-11 16:37:33 -06:00
KAT
60e1947dd8 [NixOS] Add swap to jimi-hendnix 2024-06-10 19:45:21 -06:00
0305fa4683 [NixOS] Bump railbird secrets 2024-06-11 01:27:29 +00:00
84a1f22326 Delete htop configuration 2024-06-10 18:26:56 -06:00
4cb057109f [Emacs] Add logg snippet 2024-06-10 18:25:40 -06:00
51d2863cdc [NixOS] Rename razer to david-blade 2024-06-10 18:25:25 -06:00
0c1cd15391 [Emacs] Fix avy in eat 2024-06-10 18:24:50 -06:00
cef3b04ebd [NixOS] Add railbird user 2024-06-10 16:13:19 -06:00
b9f87ac490 [NixOS] Allow agent forwarding 2024-06-03 04:08:10 +00:00
3b55c26a2c [NixOS] Enable ssh agent auth 2024-06-03 03:58:13 +00:00
dcd38e777a [NixOS] Add cuda-maintainers cache 2024-06-03 03:57:57 +00:00
2116f650f7 Revert "[starship] Switch prompt"
This reverts commit 2af8204750.
2024-06-03 02:07:31 +00:00
00139ef2fe [NixOS] [Emacs] Enable eat shell integration 2024-06-02 18:10:49 -06:00
2af8204750 [starship] Switch prompt 2024-06-02 18:10:49 -06:00
cd64244bd8 [Emacs] Disable org-wild notifications for kat 2024-06-02 18:06:48 -06:00
4cc68dedea [Emacs] Finish switching to eat including migrating term-projectile 2024-06-02 17:55:13 -06:00
77fe614b7b [Emacs] Add eat 2024-06-02 06:08:34 +00:00
6bbe7f186a [NixOS] Setup argcomplete completino for prb, prod-prb and railbird 2024-06-02 04:53:48 +00:00
77fc296e9e [NixOS] Add strixy-minaj-wsl 2024-06-02 04:04:05 +00:00
807944f182 [Emacs] Add ign and 401 snippets 2024-06-01 13:56:06 -06:00
97c2779d1b Merge pull request #25 from bcorner/master
Add ben to realUsers, users.nix
2024-05-29 00:11:41 -06:00
9d900057f6 Working ben.nix file.
Probably unrelated, had to remove ~/.zshrc and ~/.zprofile in order for
nixos-rebuild switch to work.
2024-05-29 01:03:49 -05:00
86b545761f Move home-manager.backupFileExtension entry to bottom of ben.nix 2024-05-29 00:02:55 -05:00
a8a66916f4 Add shellAliases, set backupFileExtension in ben.nix. 2024-05-28 23:01:07 -05:00
32d68061a5 Make sure user ben has sudo; quick fix, prefer no repeat extraGroups 2024-05-28 22:17:40 -05:00
71 changed files with 1374 additions and 444 deletions

View File

@@ -1,8 +0,0 @@
language: generic
script: bash ./gen-gh-pages/deploy.sh
env:
global:
- ENCRYPTION_LABEL: "73e6c870aa87"
- COMMIT_AUTHOR_EMAIL: "IvanMalison@gmail.com"
- COMMIT_AUTHOR_NAME: "Ivan Malison"

View File

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

View File

@@ -1514,20 +1514,26 @@ https://github.com/alpaker/Fill-Column-Indicator/issues/21 for more details
(advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company) (advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company)
(add-hook 'prog-mode-hook 'fci-mode))) (add-hook 'prog-mode-hook 'fci-mode)))
#+END_SRC #+END_SRC
** highlight-indent-guides ** indent-bars
If the load-theme hook from this package starts causing trouble check for #+begin_src emacs-lisp
custom-set-faces in your custom file. (use-package indent-bars
#+BEGIN_SRC emacs-lisp :disabled t
(use-package highlight-indent-guides :straight (indent-bars :type git :host github :repo "jdtsmith/indent-bars")
:commands highlight-indent-guides-mode
:diminish highlight-indent-guides-mode
:preface
(progn
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
:config :config
(progn (require 'indent-bars-ts) ; not needed with straight
(setq highlight-indent-guides-method 'fill))) :custom
#+END_SRC (indent-bars-treesit-support t)
(indent-bars-treesit-ignore-blank-lines-types '("module"))
;; Add other languages as needed
(indent-bars-treesit-scope '((python function_definition class_definition for_statement
if_statement with_statement while_statement)))
;; wrap may not be needed if no-descend-list is enough
;; (indent-bars-treesit-wrap '((python argument_list parameters ; for python, as an example
;; list list_comprehension
;; dictionary dictionary_comprehension
;; parenthesized_expression subscript)))
:hook ((prog-mode) . indent-bars-mode))
#+end_src
** man-mode ** man-mode
Man page escape sequences aren't properly handled by emacs pager. This function Man page escape sequences aren't properly handled by emacs pager. This function
fixes that, but for now, it needs to be run manually, since I haven't figured fixes that, but for now, it needs to be run manually, since I haven't figured
@@ -1785,7 +1791,8 @@ bind-key and global-set-key forms.
(defun imalison:do-rg-default-directory (&rest args) (defun imalison:do-rg-default-directory (&rest args)
(interactive) (interactive)
(apply 'consult-ripgrep default-directory args)) (let ((consult-ripgrep-args (concat consult-ripgrep-args " --no-ignore" " --hidden")))
(apply 'consult-ripgrep default-directory args)))
(emit-prefix-selector imalison:do-rg (emit-prefix-selector imalison:do-rg
consult-ripgrep consult-ripgrep
@@ -2316,6 +2323,13 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
(unbind-key "C-j" python-mode-map) (unbind-key "C-j" python-mode-map)
(add-hook 'python-mode-hook #'imalison:python-mode))) (add-hook 'python-mode-hook #'imalison:python-mode)))
#+END_SRC #+END_SRC
*** ruby
#+begin_src emacs-lisp
(use-package ruby-mode
:config
(setf (alist-get 'ruby-ts-mode apheleia-mode-alist)
'(rubocop)))
#+end_src
*** go *** go
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package go-mode (use-package go-mode
@@ -2892,6 +2906,10 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
:defer t :defer t
:mode ("\\.kt\\'")) :mode ("\\.kt\\'"))
#+END_SRC #+END_SRC
*** swift
#+begin_src emacs-lisp
(use-package swift-mode)
#+end_src
*** groovy *** groovy
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package groovy-mode) (use-package groovy-mode)
@@ -3331,6 +3349,30 @@ 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
@@ -3412,6 +3454,12 @@ in term-mode. This makes term-mode 1000% more useful
term-projectile-switch) term-projectile-switch)
:config :config
(progn (progn
(use-package term-manager-eat
:demand t
:straight
(term-manager-eat :type git :files ("term-manager-eat.el")
:host github :repo "colonelpanic8/term-manager"))
(setq term-projectile-term-manager (term-projectile :build-term 'term-manager-eat-build-term))
(emit-prefix-selector imalison:term (emit-prefix-selector imalison:term
term-projectile-forward term-projectile-forward
term-projectile-create-new) term-projectile-create-new)
@@ -3607,15 +3655,6 @@ I had to disable this mode because something that it does messes with coding set
(progn (progn
(setq dtrt-indent-active-mode-line-info " [⟼]"))) (setq dtrt-indent-active-mode-line-info " [⟼]")))
#+END_SRC #+END_SRC
** indent-guide
#+BEGIN_SRC emacs-lisp
(use-package indent-guide
:disabled t
:config
(progn
(indent-guide-global-mode -1)
(setq indent-guide-delay 0.1)))
#+END_SRC
** rainbow-delimiters ** rainbow-delimiters
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package rainbow-delimiters (use-package rainbow-delimiters
@@ -4100,7 +4139,12 @@ This also adds syntax highlighting for gradle
#+END_SRC #+END_SRC
** evil ** evil
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package evil :commands (evil-mode)) (use-package evil
:commands (evil-mode)
:config
(use-package evil-collection
:config
(with-eval-after-load 'eat (evil-collection-eat-setup))))
#+END_SRC #+END_SRC
** hackernews ** hackernews
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp

View File

@@ -163,3 +163,8 @@ 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

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

View File

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

View File

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

View File

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

View File

@@ -1,20 +0,0 @@
binding "gtk-emacs-text-entry"
{
bind "<alt>BackSpace" { "delete-from-cursor" (word-ends, -1) }
}
gtk-theme-name="Paper"
gtk-icon-theme-name="Paper"
gtk-font-name="Roboto 11"
gtk-cursor-theme-name="Paper"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_BOTH
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
gtk-button-images=1
gtk-menu-images=1
gtk-enable-event-sounds=1
gtk-enable-input-feedback-sounds=1
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"

View File

@@ -2,18 +2,25 @@
import argparse import argparse
import os import os
import sys import sys
import logging
logger = logging.getLogger(__name__)
class BrightnessManager(object): class BrightnessManager(object):
@classmethod @classmethod
def find_brightness(cls): def find_brightness(cls):
items_in_backlight_directory = os.listdir("/sys/class/backlight")
if len(items_in_backlight_directory) > 1:
logger.warning(f"More than one entry in the backlight directory {items_in_backlight_directory}")
return cls.from_path( return cls.from_path(
os.path.join("/sys/class/backlight", os.listdir("/sys/class/backlight")[0]) os.path.join("/sys/class/backlight", items_in_backlight_directory[0])
) )
@classmethod @classmethod
def from_path(cls, path): def from_path(cls, path):
logger.warning(f"Using path {path}")
return cls( return cls(
set_brightness_filepath=os.path.join(path, "brightness"), set_brightness_filepath=os.path.join(path, "brightness"),
actual_brightness_filepath=os.path.join(path, "actual_brightness"), actual_brightness_filepath=os.path.join(path, "actual_brightness"),
@@ -71,6 +78,11 @@ def build_parser():
if __name__ == '__main__': if __name__ == '__main__':
args = build_parser().parse_args() args = build_parser().parse_args()
BrightnessManager.find_brightness().increment_by_proportion(float(args.change) / 100) symlink_path = os.readlink("/home/imalison/.config/brightness_manager/symlink")
if os.path.exists(symlink_path):
manager = BrightnessManager.from_path(symlink_path)
else:
manager = BrightnessManager.find_brightness()
manager.increment_by_proportion(float(args.change) / 100)
if args.do_print: if args.do_print:
print(int(IntelBrightnessManager.current_proportion * 100)) print(int(manager.current_proportion * 100))

7
dotfiles/lib/functions/ns Executable file
View File

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

355
nix-darwin/flake.lock generated Normal file
View File

@@ -0,0 +1,355 @@
{
"nodes": {
"agenix": {
"inputs": {
"darwin": "darwin",
"home-manager": "home-manager",
"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": [
"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": {
"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
}

78
nix-darwin/flake.nix Normal file
View File

@@ -0,0 +1,78 @@
{
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;
};
};
outputs = inputs@{ self, nix-darwin, nixpkgs, ... }:
let
configuration = { pkgs, config, ... }: {
environment.systemPackages = with pkgs; [
emacs
slack
gitFull
ripgrep
yarn
nodePackages.prettier
vim
just
];
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";
# Create /etc/zshrc that loads the nix-darwin environment.
programs.zsh.enable = true;
# 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.
# $ darwin-rebuild changelog
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;
};
in
{
# Build darwin flake using:
# $ darwin-rebuild build --flake .#Kats-Mac-mini
darwinConfigurations."Kats-Mac-mini" = nix-darwin.lib.darwinSystem {
modules = [
configuration
];
};
# Expose the package set, including overlays, for convenience.
darwinPackages = self.darwinConfigurations."Kats-Mac-mini".pkgs;
};
}

2
nix-darwin/justfile Normal file
View File

@@ -0,0 +1,2 @@
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 "modules.base" true { makeEnable config "myModules.base" true {
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u" "openssl-1.0.2u"
"electron-12.2.3" "electron-12.2.3"
@@ -36,8 +36,7 @@ makeEnable config "modules.base" true {
}; };
# Audio # Audio
sound.enable = true; hardware.pulseaudio.enable = false;
hardware.pulseaudio.enable = true;
# Bluetooth # Bluetooth
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;

View File

@@ -1,12 +1,17 @@
{ pkgs, inputs, config, makeEnable, ... }: { pkgs, inputs, config, makeEnable, ... }:
makeEnable config "modules.ben" true { makeEnable config "myModules.ben" true {
home-manager.backupFileExtension = "backup"; # Add this line
home-manager.users.ben = { home-manager.users.ben = {
programs.zsh = { programs.zsh = {
enable = true; enable = true;
shellAliases = { shellAliases = {
ll = "ls -alF";
la = "ls -A";
l = "ls -CF"; l = "ls -CF";
la = "ls -A";
ll = "ls -lh";
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.modules.cache-server; let cfg = config.myModules.cache-server;
in in
{ {
options = { options = {
modules.cache-server = { myModules.cache-server = {
enable = mkEnableOption "nix cache server"; enable = mkEnableOption "nix cache server";
port = mkOption { port = mkOption {
type = types.int; type = types.int;

View File

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

View File

@@ -19,10 +19,13 @@
./gnome.nix ./gnome.nix
./imalison.nix ./imalison.nix
./internet-computer.nix ./internet-computer.nix
./k3s.nix
./kat.nix ./kat.nix
./keybase.nix ./keybase.nix
./kubelet.nix
./nix.nix ./nix.nix
./nixified.ai.nix ./nixified.ai.nix
./nvidia.nix
./options.nix ./options.nix
./plasma.nix ./plasma.nix
./postgres.nix ./postgres.nix
@@ -42,17 +45,17 @@
}; };
config = lib.mkIf config.features.full.enable { config = lib.mkIf config.features.full.enable {
modules.base.enable = true; myModules.base.enable = true;
modules.desktop.enable = true; myModules.desktop.enable = true;
modules.plasma.enable = true; myModules.plasma.enable = true;
modules.gnome.enable = false; myModules.gnome.enable = false;
modules.xmonad.enable = true; myModules.xmonad.enable = true;
modules.extra.enable = true; myModules.extra.enable = true;
modules.electron.enable = true; myModules.electron.enable = true;
modules.code.enable = true; myModules.code.enable = true;
modules.games.enable = true; myModules.games.enable = true;
modules.syncthing.enable = true; myModules.syncthing.enable = true;
modules.fonts.enable = true; myModules.fonts.enable = true;
modules.nixified-ai.enable = false; myModules.nixified-ai.enable = false;
}; };
} }

View File

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

View File

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

View File

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

520
nixos/flake.lock generated
View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,5 +1,5 @@
{ config, makeEnable, ... }: { config, makeEnable, ... }:
makeEnable config "modules.gitea" false { makeEnable config "myModules.gitea" false {
services.gitea = { services.gitea = {
enable = true; enable = true;
@@ -13,6 +13,7 @@ makeEnable config "modules.gitea" false {
SSH_PORT = 1123; SSH_PORT = 1123;
HTTP_PORT = 3001; HTTP_PORT = 3001;
ROOT_URL = "https://dev.railbird.ai"; ROOT_URL = "https://dev.railbird.ai";
DISABLE_REGISTRATION = true;
}; };
settings.actions = { settings.actions = {
ENABLED = true; ENABLED = true;

View File

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

View File

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

23
nixos/k3s.nix Normal file
View File

@@ -0,0 +1,23 @@
{ config, makeEnable, ... }:
makeEnable config "myModules.railbird-k3s" false {
services.k3s = {
enable = true;
role = "server";
clusterInit = true;
containerdConfigTemplate = ''
{{ template "base" . }}
[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,10 +1,11 @@
{ pkgs, inputs, config, makeEnable, ... }: { pkgs, inputs, config, makeEnable, ... }:
makeEnable config "modules.kat" false { makeEnable config "myModules.kat" false {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
bitwarden bitwarden
obsidian obsidian
obs-studio obs-studio
ffmpeg ffmpeg
code-cursor
]; ];
environment.extraInit = '' environment.extraInit = ''

View File

@@ -55,4 +55,6 @@ rec {
benKeys = [ benKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
]; ];
interviewKeys = [
];
} }

23
nixos/kubelet-client.crt Normal file
View File

@@ -0,0 +1,23 @@
-----BEGIN CERTIFICATE-----
MIIDyTCCAjGgAwIBAgIRAMQBZiVjA5BGSkDldScI9cMwDQYJKoZIhvcNAQELBQAw
LzEtMCsGA1UEAxMkM2I2N2M2NzgtNzI5My00YTIzLTg3ZWItY2NiMTZjYWFkMzFm
MB4XDTI0MDkyOTIwNTAzNloXDTI5MDkyODIwNTIzNlowOTEVMBMGA1UEChMMc3lz
dGVtOm5vZGVzMSAwHgYDVQQDExdzeXN0ZW06bm9kZTpyeXplbi1zaGluZTCCASIw
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANIOfbq05IIdgX2jXYLaEt66rkXp
NlqPNfh6v9nL1Aw6PSM3DEIWXVko8AyduRF4kXNO6xc6l/Rzk03w3qSvJpWpALGD
JjslgRL4VJWUC6/QydsCO9io7SoUEmXFtDcsW6DftFejosr+56ZnVFrz5MMzfUAL
Ix6n83NJvXZ8f9oHSX8TFW34ZClLxDq2fprFIs+D2QlFRE50Jr/Q8gPI2OSQDUBW
DFdQrjt81bLs6doQipUqvHb4/Ms49agHek1ceWIMf+KZWoao5KNQTBe6XL2BUgA/
MS3ZvQppDDTygA0QkgdtOJyG2lsrAmd7LEXTr9ilsqLV3YQMMKhCifwINa0CAwEA
AaNWMFQwDgYDVR0PAQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMCMAwGA1Ud
EwEB/wQCMAAwHwYDVR0jBBgwFoAUjvcbOeZ4QIk53EkATOaOFiAZUq0wDQYJKoZI
hvcNAQELBQADggGBAELWgmdmg9TKjDDqmF6pYr1j43gZYclXW4sB509itSiIeltX
Isrvn5R5ok0W5Jcl+7QMhpntqIKJi26OqbcdBhqlaVURkBkbrx8aegkWJfPO+Fzz
NyyiIpk7KQzGy6N5//jfMPZtJfQEQZwMenW0cj7F0QHOdVZy90+JNr2P3uV3Ad7u
WZuYpbOFjOeQg1hJsX8wEU4KJyptn/kXhM+CqAnQ4S+k2wpjECD8KpWKAmpJWZg0
RaBPyHZSmWnbXqs4LU6ERaZJxZQG0ODuA18DmGfaAkUUUvE2J0ploc2Y8Xl4zUWW
Ivwslyx30YO3J9qI30d9tTQw/A0vHCoDNDbCg7lorZqP3TiTG9ANLndPqqg6inYU
yfj612//JrO8w/4qh7cxR03P35aK0paLC74FaKLtZ5CwPK3BAW/0Zhv5fH4io6hE
rfJmcjhbKD0Cwr9Dn6wVFz/a33H+0vMohHrVlDk4bSDIymbuJcZpYgR8n5WNQbGu
nwjiLXCnVxcVjkcj2w==
-----END CERTIFICATE-----

22
nixos/kubelet.nix Normal file
View File

@@ -0,0 +1,22 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "myModules.kubelet" false {
age.secrets."api_service_account_key.json.age".file = ./secrets/api_service_account_key.json.age;
services.kubernetes.kubelet = {
enable = true;
kubeconfig = {
server = "https://34.31.205.230";
caFile = ./railbird-kubernetes.crt;
certFile = ./kubelet-client.crt;
keyFile = config.age.secrets."api_service_account_key.json.age".path;
};
registerNode = true;
cni = {
packages = [ pkgs.cni-plugins pkgs.calico-cni-plugin ];
};
extraOpts = ''
--fail-swap-on=false
# --container-runtime=remote
# --container-runtime-endpoint=unix:///run/containerd/containerd.sock
'';
};
}

View File

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

View File

@@ -8,10 +8,10 @@
sublime sublime
vlc vlc
]; ];
modules.desktop.enable = false; myModules.desktop.enable = false;
modules.plasma.enable = false; myModules.plasma.enable = false;
imalison.nixOverlay.enable = false; imalison.nixOverlay.enable = false;
modules.wsl.enable = true; myModules.wsl.enable = true;
networking.hostName = "bencbox"; networking.hostName = "bencbox";
@@ -21,4 +21,19 @@
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,25 +13,25 @@ in
extraGroups = ["syncthing"]; extraGroups = ["syncthing"];
}; };
modules.raspberry-pi.enable = true; myModules.raspberry-pi.enable = true;
modules.base.enable = true; myModules.base.enable = true;
modules.desktop.enable = true; myModules.desktop.enable = true;
modules.xmonad.enable = false; myModules.xmonad.enable = false;
modules.extra.enable = false; myModules.extra.enable = false;
modules.code.enable = true; myModules.code.enable = true;
modules.games.enable = false; myModules.games.enable = false;
modules.syncthing.enable = true; myModules.syncthing.enable = true;
modules.fonts.enable = true; myModules.fonts.enable = true;
modules.nixified-ai.enable = false; myModules.nixified-ai.enable = false;
modules.cache-server = { myModules.cache-server = {
enable = false; enable = false;
host-string = biskcomp-nginx-hostnames; host-string = biskcomp-nginx-hostnames;
port = 80; port = 80;
path = "/nix-cache"; path = "/nix-cache";
}; };
modules.gitea.enable = true; myModules.gitea.enable = true;
modules.gitea-runner.enable = false; myModules.gitea-runner.enable = false;
services.vaultwarden = { services.vaultwarden = {
enable = true; enable = true;
@@ -85,6 +85,16 @@ in
''; '';
}; };
}; };
"docs.railbird.ai" = {
enableACME = true;
forceSSL = true;
root = "/var/lib/syncthing/railbird/docs";
locations."/" = {
extraConfig = ''
autoindex on;
'';
};
};
}; };
}; };
@@ -98,7 +108,7 @@ in
}; };
services.home-assistant = { services.home-assistant = {
enable = true; enable = false;
extraComponents = [ extraComponents = [
# Components required to complete the onboarding # Components required to complete the onboarding
"met" "met"

View File

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

View File

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

View File

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

View File

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

View File

@@ -5,17 +5,17 @@
../configuration.nix ../configuration.nix
]; ];
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 = true; myModules.gitea-runner.enable = true;
modules.postgres.enable = true; myModules.postgres.enable = true;
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
@@ -45,6 +45,10 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = [
{ device = "/dev/disk/by-uuid/598e9aa1-4940-4410-a2fa-3dfd8b7d2c0d"; }
];
home-manager.users = forEachUser { home-manager.users = forEachUser {
home.stateVersion = "23.11"; home.stateVersion = "23.11";
}; };

View File

@@ -4,13 +4,21 @@
../configuration.nix ../configuration.nix
]; ];
services.macos-ventura = {
enable = true;
openFirewall = true;
vncListenAddr = "0.0.0.0";
};
features.full.enable = true; features.full.enable = true;
modules.cache-server = { myModules.cache-server = {
enable = true; enable = true;
port = 3090; port = 3090;
}; };
modules.gitea-runner.enable = true; myModules.gitea-runner.enable = true;
modules.vscode.enable = true; myModules.vscode.enable = true;
myModules.kat.enable = true;
myModules.nvidia.enable = true;
networking.hostName = "nixquick"; networking.hostName = "nixquick";
@@ -21,15 +29,6 @@
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
# install nvidia drivers in addition to intel one
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
services.xserver = {
videoDrivers = [ "nvidia" ];
};
hardware.opengl.driSupport32Bit = true;
hardware.nvidia.modesetting.enable = true; hardware.nvidia.modesetting.enable = true;
# This also enables v4l2loopback # This also enables v4l2loopback

View File

@@ -55,15 +55,15 @@
}; };
features.full.enable = false; features.full.enable = false;
modules.base.enable = true; myModules.base.enable = true;
modules.desktop.enable = true; myModules.desktop.enable = true;
modules.xmonad.enable = false; myModules.xmonad.enable = false;
modules.gnome.enable = true; myModules.gnome.enable = true;
modules.code.enable = true; myModules.code.enable = true;
modules.syncthing.enable = true; myModules.syncthing.enable = true;
modules.fonts.enable = true; myModules.fonts.enable = true;
modules.plasma.enable = false; myModules.plasma.enable = false;
modules.gitea-runner.enable = true; myModules.gitea-runner.enable = true;
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae"; { device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae";

View File

@@ -6,14 +6,16 @@
]; ];
features.full.enable = true; features.full.enable = true;
myModules.kubelet.enable = false;
myModules.nvidia.enable = true;
# Needed for now because monitors have different refresh rates # Needed for now because monitors have different refresh rates
modules.xmonad.picom.vSync.enable = false; myModules.xmonad.picom.vSync.enable = false;
modules.cache-server = { myModules.cache-server = {
enable = true; enable = true;
port = 3090; port = 3090;
}; };
modules.gitea-runner.enable = true; myModules.gitea-runner.enable = true;
modules.postgres.enable = true; myModules.postgres.enable = true;
boot.loader.systemd-boot.configurationLimit = 5; boot.loader.systemd-boot.configurationLimit = 5;
@@ -45,15 +47,15 @@
boot.initrd.kernelModules = [ "dm-snapshot" ]; boot.initrd.kernelModules = [ "dm-snapshot" ];
# install nvidia drivers in addition to intel one # install nvidia drivers in addition to intel one
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ]; hardware.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ]; hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
services.xserver = { services.xserver = {
videoDrivers = [ "nvidia" ]; videoDrivers = [ "nvidia" ];
}; };
hardware.nvidia.modesetting.enable = true; hardware.nvidia.modesetting.enable = true;
hardware.opengl.driSupport32Bit = true; hardware.graphics.enable32Bit = true;
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];

View File

@@ -0,0 +1,34 @@
{ 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,18 +3,19 @@
{ {
imports = [ imports = [
../configuration.nix ../configuration.nix
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
]; ];
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;
@@ -23,21 +24,15 @@
]; ];
services.xserver.dpi = 96; services.xserver.dpi = 96;
boot.kernelPackages = pkgs.linuxPackages_latest; boot.kernelPackages = pkgs.linuxPackages_testing;
boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
services.xserver = { hardware.graphics = {
videoDrivers = [ "nvidia" ];
};
hardware.opengl = {
enable = true; enable = true;
driSupport = true; enable32Bit = true;
driSupport32Bit = true;
}; };
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.production;
hardware.nvidia.modesetting.enable = true;
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;

View File

@@ -18,6 +18,7 @@
}; };
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
nix = rec { nix = rec {
extraOptions = '' extraOptions = ''
@@ -29,9 +30,11 @@
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 "modules.nixified-ai" false { specialArgs.makeEnable config "myModules.nixified-ai" false {
imports = [ imports = [
inputs.nixified-ai.nixosModules.invokeai inputs.nixified-ai.nixosModules.invokeai
]; ];

15
nixos/nvidia.nix Normal file
View File

@@ -0,0 +1,15 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "myModules.nvidia" false {
environment.systemPackages = with pkgs; [
nvidia-container-toolkit
];
hardware.nvidia-container-toolkit.enable = 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 = {
modules.xmonad.picom.vSync.enable = lib.mkOption { myModules.xmonad.picom.vSync.enable = lib.mkOption {
default = true; default = true;
type = lib.types.bool; type = lib.types.bool;
}; };

View File

@@ -17,15 +17,16 @@ final: prev: {
}; };
}); });
picom = prev.picom.overrideAttrs (old: { # picom = prev.picom.overrideAttrs (old: {
src = prev.fetchFromGitHub { # src = prev.fetchFromGitHub {
repo = "picom"; # repo = "picom";
owner = "dccsillag"; # owner = "dccsillag";
rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5"; # rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5";
sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8=="; # sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8==";
}; # };
nativeBuildInputs = old.nativeBuildInputs ++ [final.pcre]; # nativeBuildInputs = old.nativeBuildInputs ++ [final.pcre final.gnugrep.pcre2 final.libpcre];
}); # buildInputs = old.buildInputs ++ [final.pcre];
# });
expressvpn = prev.expressvpn.overrideAttrs (_: { expressvpn = prev.expressvpn.overrideAttrs (_: {
src = prev.fetchurl { src = prev.fetchurl {

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,25 @@
-----BEGIN CERTIFICATE-----
MIIELTCCApWgAwIBAgIRALNxOT7J7N/eK6edp9LbKAIwDQYJKoZIhvcNAQELBQAw
LzEtMCsGA1UEAxMkM2I2N2M2NzgtNzI5My00YTIzLTg3ZWItY2NiMTZjYWFkMzFm
MCAXDTIzMTIyOTE5NTQ0MloYDzIwNTMxMjIxMjA1NDQyWjAvMS0wKwYDVQQDEyQz
YjY3YzY3OC03MjkzLTRhMjMtODdlYi1jY2IxNmNhYWQzMWYwggGiMA0GCSqGSIb3
DQEBAQUAA4IBjwAwggGKAoIBgQCUYUuTrpDbwUS2B3SYUoa7LI5mi8NNr0lDe1w4
3yPpVnu6ubvnTNm2j/v88HYwEjlppEg4HjhP7YEJ8gsGdgUCpIaPWTpifVmA7E4o
2DbJDiePkkUGkNL0whCClOOcO0hyxdk9Pol5wRzci0l6zSalE6DB4rJrmB5Ppl/A
t2KAVVqpwbynmbijr4yZh7Bp7LfaIrFthlv2ZPEjLfPLz7YthBw9/iUt94mLMyWZ
BpygA5y/CocQQnnFMnU1o0eUd37YL7zErfIxx/AmL10Sq0qdFXiYOJJqubURbdS8
DZ6dyHdX+UlxPls2Rlx9nDaiNGFJdzqHJzDdOlzN3kkdDQoO8xUdH9ekFU7rOwkP
5NpubSwrd1FOGHh+EknugnEQD4Oip/YQ7IUj3Afm5Ag2la9k4WJRgjACbkQ2+k9I
sFmPmmMVHn9nepCMiYQMjX7ApZw0isDPeVK5EuQeImgu7uNoV8R5VwG0XoBCXz4S
UqYv11uEsMqFu07Zwlznsxnm0uECAwEAAaNCMEAwDgYDVR0PAQH/BAQDAgIEMA8G
A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI73GznmeECJOdxJAEzmjhYgGVKtMA0G
CSqGSIb3DQEBCwUAA4IBgQAm19zlm3WVePflA6Zh/FxvE8MirrJF6jmJzRrBCEM5
DwkSmY3dvONqCYeeNb4+xWXWQ8eVKVlPdkoW3V7H5xnJ63dXRNN2lQ3JpSTG3+yP
Omp6XGY9mmatdHwyV7N4h10aKEWAuRhy148sdJZLYj0LbR42pCVYhEP4D3Qj7KjN
PJe+cR8NSpiYmDH5y88Jqubztj5NVcDj/iN9h/7/GajbU6lCgN/SxZgi9cNGjxSb
JHFHE2Mp3z9sjsieTXMplLqK045TQ2IBqnJyMdKkvSNkRUCbz2yXdiIOKtvU4ly0
h884z9P5JQ9bxe+6cwYC4ky3G5WYMn++RUsuCk4ScsrbZtM9jpKnz/TygMdVTC5w
Siq6OHKtAnh8Ax1LEKicg9FLd6ODxR3OVKu+fUPV4XHAWJnmvElGlivjneHiE+OL
dzgb/CfBEGHYBVc2PDIhwBmUdoEZ/t3UjvmSI46ZblYpWodJvLFwge2HxSivRlLW
Uh/oPWX5N/CH9I34HTAhI48=
-----END CERTIFICATE-----

View File

@@ -1,6 +1,6 @@
{ config, pkgs, inputs, makeEnable, ... }: { config, pkgs, inputs, makeEnable, ... }:
makeEnable config "modules.raspberry-pi" false { makeEnable config "myModules.raspberry-pi" false {
imports = [ imports = [
inputs.nixos-hardware.nixosModules.raspberry-pi-4 inputs.nixos-hardware.nixosModules.raspberry-pi-4
]; ];

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -10,5 +10,8 @@ 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;
"nextcloud-admin.age".publicKeys = keys.agenixKeys; "nextcloud-admin.age".publicKeys = keys.agenixKeys;
"ryzen-shine-kubernetes-token.age".publicKeys = keys.agenixKeys;
"api_service_account_key.json.age".publicKeys = keys.agenixKeys;
} }

View File

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

View File

@@ -17,10 +17,12 @@ let
mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; }; mixos = { id = "7DMMUDT-CO33EMS-LQW65MX-3BVYDBT-ZZWDJC6-SWEF6SW-ICUMWOE-ZC4IBQK"; };
strixi-minaj-wsl = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; }; strixi-minaj-wsl = { id = "DOAEFFI-W6EZY3K-GDUHDLX-6DQPVFC-XU3G65X-5KX6RKK-EMF7ZT7-YKKKOAM"; };
strixi-minaj = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; }; strixi-minaj = { id = "IF76WOS-WVYFAQG-ZZMIT3R-ZR6EQQH-YQP3FGZ-BJ3LJKO-56FK2XA-UREADQM"; };
dean-zephyrus = { id = "UVIQVZQ-WFWVUQT-OTXPK7V-RXFKAVV-RY5DV2Z-XZEH3Q2-JQZIQLW-XMSB6AT"; };
bencbox = { id = "FZFDBDG-J56RKLU-JZUHEAB-SAGB6CM-LRR6QFC-ZLNQG22-R2DEXAC-MY4BXQN"; };
}; };
allDevices = builtins.attrNames devices; allDevices = builtins.attrNames devices;
in in
makeEnable config "modules.syncthing" true { makeEnable config "myModules.syncthing" true {
system.activationScripts.syncthingPermissions = { system.activationScripts.syncthingPermissions = {
text = '' text = ''
chown -R syncthing:syncthing /var/lib/syncthing chown -R syncthing:syncthing /var/lib/syncthing

View File

@@ -1,4 +1,4 @@
{ pkgs, keys, ... }: { pkgs, keys, inputs, system, ... }:
let let
extraGroups = [ extraGroups = [
"audio" "audio"
@@ -89,6 +89,16 @@ 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 "modules.vscode" true { makeEnable config "myModules.vscode" true {
home-manager.users = forEachUser { home-manager.users = forEachUser {
imports = [inputs.vscode-server.homeModules.default]; imports = [inputs.vscode-server.homeModules.default];
services.vscode-server.enable = true; services.vscode-server.enable = true;

View File

@@ -1,19 +1,21 @@
{ config, inputs, pkgs, makeEnable, ... }: { config, inputs, pkgs, makeEnable, ... }:
makeEnable config "modules.wsl" false { makeEnable config "myModules.wsl" false {
imports = [ imports = [
inputs.nixos-wsl.nixosModules.wsl inputs.nixos-wsl.nixosModules.wsl
]; ];
modules.base.enable = false; myModules.base.enable = false;
modules.desktop.enable = false; myModules.desktop.enable = false;
modules.xmonad.enable = false; myModules.xmonad.enable = false;
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 "modules.xmonad" true { makeEnable config "myModules.xmonad" true {
nixpkgs.overlays = with inputs; [ nixpkgs.overlays = with inputs; [
xmonad.overlay xmonad.overlay
xmonad-contrib.overlay xmonad-contrib.overlay
@@ -25,7 +25,7 @@ makeEnable config "modules.xmonad" true {
# Haskell Desktop # Haskell Desktop
haskellPackages.xmonad haskellPackages.xmonad
haskellPackages.imalison-xmonad haskellPackages.imalison-xmonad
haskellPackages.notifications-tray-icon # haskellPackages.notifications-tray-icon
haskellPackages.gtk-sni-tray haskellPackages.gtk-sni-tray
haskellPackages.status-notifier-item haskellPackages.status-notifier-item
haskellPackages.dbus-hslogger haskellPackages.dbus-hslogger
@@ -80,7 +80,7 @@ makeEnable config "modules.xmonad" true {
services.picom = { services.picom = {
enable = true; enable = true;
vSync = config.modules.xmonad.picom.vSync.enable; vSync = config.myModules.xmonad.picom.vSync.enable;
backend = "glx"; backend = "glx";
extraArgs = ["--experimental-backends"]; extraArgs = ["--experimental-backends"];
@@ -137,21 +137,21 @@ makeEnable config "modules.xmonad" true {
}; };
}; };
systemd.user.services.notifications-tray-icon = { # systemd.user.services.notifications-tray-icon = {
Unit = { # Unit = {
Description = "Notifications tray icon"; # Description = "Notifications tray icon";
After = [ "graphical-session-pre.target" "tray.target" ]; # After = [ "graphical-session-pre.target" "tray.target" ];
PartOf = [ "graphical-session.target" ]; # PartOf = [ "graphical-session.target" ];
}; # };
Install = { WantedBy = [ "graphical-session.target" ]; }; # Install = { WantedBy = [ "graphical-session.target" ]; };
Service = { # Service = {
ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token"; # ExecStart = "${pkgs.haskellPackages.notifications-tray-icon}/bin/notifications-tray-icon --github-token-pass dfinity-github-api-token";
Restart = "always"; # Restart = "always";
RestartSec = 3; # RestartSec = 3;
}; # };
}; # };
systemd.user.services.shutter = { systemd.user.services.shutter = {
Unit = { Unit = {