66 Commits

Author SHA1 Message Date
f0707ed8c2 [NixOS] Host docs.railbird.ai 2024-08-19 14:31:17 -06:00
43aeab6fda kubernets WIP 2024-08-18 21:33:58 -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
94e7e738fb Add ben to realUsers, users.nix; key to keys.nix. zsh now default??
uhh paste contents of .profile into .zprofile I guess?
2024-05-28 21:07:48 -06:00
77cf8d46a3 Add ben module 2024-05-28 20:55:02 -06:00
b5fb07519c [NixOS] Add dean's new ssh key 2024-05-27 14:49:19 -06:00
0f7e3596de Merge pull request #24 from bcorner/master
[NixOS] Add bencbox
2024-05-15 20:07:31 -06:00
7aeed13a34 [NixOS] Add bencbox 2024-05-15 20:54:01 -05:00
43 changed files with 1017 additions and 266 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,25 @@ 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 :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
(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 +1790,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 +2322,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 +2905,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 +3348,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 +3453,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 +3654,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 +4138,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

@@ -36,7 +36,6 @@ makeEnable config "modules.base" true {
}; };
# Audio # Audio
sound.enable = true;
hardware.pulseaudio.enable = true; hardware.pulseaudio.enable = true;
# Bluetooth # Bluetooth

18
nixos/ben.nix Normal file
View File

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

View File

@@ -98,7 +98,7 @@
inherit inputs machineNames; inherit inputs machineNames;
makeEnable = (import ../make-enable.nix) nixpkgs.lib; makeEnable = (import ../make-enable.nix) nixpkgs.lib;
mapValueToKeys = keys: value: builtins.listToAttrs (map (name: { inherit name value; }) keys); mapValueToKeys = keys: value: builtins.listToAttrs (map (name: { inherit name value; }) keys);
realUsers = [ "root" "imalison" "kat" "dean" "alex" ]; realUsers = [ "root" "imalison" "kat" "dean" "alex" "ben"];
forEachUser = mapValueToKeys realUsers; forEachUser = mapValueToKeys realUsers;
} // specialArgs // (import ../keys.nix); } // specialArgs // (import ../keys.nix);
}); });

View File

@@ -3,6 +3,7 @@
imports = [ imports = [
./android.nix ./android.nix
./base.nix ./base.nix
./ben.nix
./cache-server.nix ./cache-server.nix
./cache.nix ./cache.nix
./code.nix ./code.nix
@@ -20,6 +21,7 @@
./internet-computer.nix ./internet-computer.nix
./kat.nix ./kat.nix
./keybase.nix ./keybase.nix
./kubernetes.nix
./nix.nix ./nix.nix
./nixified.ai.nix ./nixified.ai.nix
./options.nix ./options.nix

View File

@@ -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
@@ -82,11 +82,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 +104,6 @@ makeEnable config "modules.desktop" true {
spotify spotify
tor-browser-bundle-bin tor-browser-bundle-bin
vscode vscode
zulip
] else []); ] else []);
} }

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

347
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": {
@@ -191,21 +238,6 @@
} }
}, },
"flake-utils_2": { "flake-utils_2": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": { "inputs": {
"systems": "systems_2" "systems": "systems_2"
}, },
@@ -223,7 +255,7 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_4": { "flake-utils_3": {
"inputs": { "inputs": {
"systems": "systems_3" "systems": "systems_3"
}, },
@@ -241,10 +273,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 +311,7 @@
}, },
"flake-utils_6": { "flake-utils_6": {
"inputs": { "inputs": {
"systems": "systems_6" "systems": "systems_8"
}, },
"locked": { "locked": {
"lastModified": 1681202837, "lastModified": 1681202837,
@@ -325,6 +375,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 +582,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",
@@ -548,7 +629,7 @@
"lsp": "lsp_2", "lsp": "lsp_2",
"lsp-test": "lsp-test_2", "lsp-test": "lsp-test_2",
"lsp-types": "lsp-types_2", "lsp-types": "lsp-types_2",
"nixpkgs": "nixpkgs_7", "nixpkgs": "nixpkgs_8",
"ormolu-052": "ormolu-052_2", "ormolu-052": "ormolu-052_2",
"ormolu-07": "ormolu-07_2", "ormolu-07": "ormolu-07_2",
"stylish-haskell-0145": "stylish-haskell-0145_2" "stylish-haskell-0145": "stylish-haskell-0145_2"
@@ -700,11 +781,33 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1715380449, "lastModified": 1723399884,
"narHash": "sha256-716+f9Rj3wjSyD1xitCv2FcYbgPz1WIVDj+ZBclH99Y=", "narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "d7682620185f213df384c363288093b486b2883f", "rev": "086f619dd991a4d355c07837448244029fc2d9ab",
"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 +862,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 +952,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": 1723343056,
"narHash": "sha256-j/PLYYGs+Gjge4JGYxMjOhWQEp+GB4Fdicetbpmp6n0=", "narHash": "sha256-ixvBNplVIqUqvshVi5azgPiGIFXlXDmahDcoP/guuTE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nix", "repo": "nix",
"rev": "87ab3c0ea4e6f85e7b902050365bb75cf2836fbb", "rev": "18485d2d53622c6ec7beab80c77efbd49ed682e2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -890,15 +995,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 +1012,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": 1723124175,
"narHash": "sha256-/ZeWQ4mL3DfHsbTZYc80qMrL4vBfENP0RiGv2KrCrEo=", "narHash": "sha256-w+rlZdbj4kn70uPJl4WrPDFoGEy0A9oJqw684nvZ9dY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "61fe33f4194bbbc48c090a2e79f4eb61b47c9b75", "rev": "be1a6b2e4ddc34b9b6a297e7df2f2a2ecee24690",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -939,6 +1045,22 @@
"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-regression": { "nixpkgs-regression": {
"locked": { "locked": {
"lastModified": 1643052045, "lastModified": 1643052045,
@@ -957,11 +1079,11 @@
}, },
"nixpkgs-regression_2": { "nixpkgs-regression_2": {
"locked": { "locked": {
"lastModified": 1715484633, "lastModified": 1723405223,
"narHash": "sha256-Es5etYksi9VsAZSBKZe4rdyi9L000MEx9lFb3TF6Eo8=", "narHash": "sha256-VSHY8GQ64AseobyeoVkJl+ZDaWPGzKs+CG6RfDM159o=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "25e9a6d07dd142bafd94603208a59c107e8f2905", "rev": "938253e0f8d5c98c4515a10cc388239cc1431db8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -972,16 +1094,16 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1709083642, "lastModified": 1721548954,
"narHash": "sha256-7kkJQd4rZ+vFrzWu8sTRtta5D1kBG0LSRYAfhtmMlSo=", "narHash": "sha256-7cCC8+Tdq1+3OPyc3+gVo9dzUNkNIQfwSDJ2HSi2u3o=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b550fe4b4776908ac2a861124307045f8e717c8e", "rev": "63d37ccd2d178d54e7fb691d7ec76000740ea24a",
"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 +1126,27 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1714782413, "lastModified": 1722087241,
"narHash": "sha256-tbg0MEuKaPcUrnmGCu4xiY5F+7LW2+ECPKVAJd2HLwM=", "narHash": "sha256-2ShmEaFi0kJVOEEu5gmlykN5dwjWYWYUJmlRTvZQRpU=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "651b4702e27a388f0f18e1b970534162dec09aff", "rev": "8c50662509100d53229d4be607f1a3a31157fa12",
"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": 1723175592,
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=", "narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f1010e0469db743d14519a1efd37e23f8513d714", "rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1051,6 +1173,22 @@
} }
}, },
"nixpkgs_7": { "nixpkgs_7": {
"locked": {
"lastModified": 1709703039,
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1686874404, "lastModified": 1686874404,
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=", "narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
@@ -1066,7 +1204,7 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs_8": { "nixpkgs_9": {
"locked": { "locked": {
"lastModified": 1682134069, "lastModified": 1682134069,
"narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=", "narHash": "sha256-TnI/ZXSmRxQDt2sjRYK/8j8iha4B4zP2cnQCZZ3vp7k=",
@@ -1155,36 +1293,24 @@
"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": { "railbird-secrets": {
"inputs": { "inputs": {
"flake-compat": [ "agenix": "agenix_2",
"nix" "flake-utils": "flake-utils_4",
], "nixpkgs": "nixpkgs_7"
"flake-utils": "flake-utils_2",
"gitignore": [
"nix"
],
"nixpkgs": [
"nix",
"nixpkgs"
],
"nixpkgs-stable": [
"nix",
"nixpkgs"
]
}, },
"locked": { "locked": {
"lastModified": 1712897695, "lastModified": 1722639965,
"narHash": "sha256-nMirxrGteNAl9sWiOhoN5tIHyjBbVi5e2tgZUgZlK3Y=", "narHash": "sha256-ZRe5Z5s/UNaXI2piyncQ3YrFl5q3GryZAfFTyeJ/vhM=",
"owner": "cachix", "ref": "refs/heads/master",
"repo": "pre-commit-hooks.nix", "rev": "9a92b83c3ad376620db3556c33e51a4300c5badd",
"rev": "40e6053ecb65fcbf12863338a6dcefb3f55f1bf8", "revCount": 73,
"type": "github" "type": "git",
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
}, },
"original": { "original": {
"owner": "cachix", "type": "git",
"repo": "pre-commit-hooks.nix", "url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
"type": "github"
} }
}, },
"root": { "root": {
@@ -1203,8 +1329,9 @@
"nixpkgs": "nixpkgs_5", "nixpkgs": "nixpkgs_5",
"nixpkgs-regression": "nixpkgs-regression_2", "nixpkgs-regression": "nixpkgs-regression_2",
"notifications-tray-icon": "notifications-tray-icon", "notifications-tray-icon": "notifications-tray-icon",
"railbird-secrets": "railbird-secrets",
"status-notifier-item": "status-notifier-item", "status-notifier-item": "status-notifier-item",
"systems": "systems_4", "systems": "systems_6",
"taffybar": "taffybar", "taffybar": "taffybar",
"vscode-server": "vscode-server", "vscode-server": "vscode-server",
"xmonad": "xmonad", "xmonad": "xmonad",
@@ -1380,6 +1507,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": [
@@ -1436,11 +1593,11 @@
}, },
"unstable": { "unstable": {
"locked": { "locked": {
"lastModified": 1715266358, "lastModified": 1723175592,
"narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=", "narHash": "sha256-M0xJ3FbDUc4fRZ84dPGx5VvgFsOzds77KiBMW/mMTnI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "f1010e0469db743d14519a1efd37e23f8513d714", "rev": "5e0ca22929f3342b19569b21b2f3462f053e497b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1453,7 +1610,7 @@
"vscode-server": { "vscode-server": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_6", "flake-utils": "flake-utils_6",
"nixpkgs": "nixpkgs_8" "nixpkgs": "nixpkgs_9"
}, },
"locked": { "locked": {
"lastModified": 1713958148, "lastModified": 1713958148,
@@ -1483,11 +1640,11 @@
"unstable": "unstable" "unstable": "unstable"
}, },
"locked": { "locked": {
"lastModified": 1714229485, "lastModified": 1722277235,
"narHash": "sha256-AOy87dJL0T9wSe1kM0tTzFlV++JwmoGW4BfBXzIUbsI=", "narHash": "sha256-fuEgR51OPzwff+ygFhBqJm51oA17rR0KtPfuDLv0Fp0=",
"owner": "xmonad", "owner": "xmonad",
"repo": "xmonad", "repo": "xmonad",
"rev": "cde1a25bca9b7aeeb24af73588221f5f54ae770b", "rev": "a58ccac7ba46414915de6c7f2b4da08b37784016",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -1,6 +1,9 @@
{ {
inputs = { inputs = {
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";
@@ -152,7 +155,10 @@
inherit inputs machineNames; inherit inputs machineNames;
makeEnable = (import ./make-enable.nix) nixpkgs.lib; makeEnable = (import ./make-enable.nix) nixpkgs.lib;
keys = (import ./keys.nix); keys = (import ./keys.nix);
usersInfo = (import ./users.nix) { pkgs = { zsh = "zsh"; }; keys = keys; }; usersInfo = (import ./users.nix) {
pkgs = { zsh = "zsh"; };
inherit keys inputs system;
};
realUsers = (builtins.attrNames realUsers = (builtins.attrNames
(nixpkgs.lib.filterAttrs (nixpkgs.lib.filterAttrs
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users) (_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)

View File

@@ -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,4 +1,4 @@
{ pkgs, config, specialArgs, ... }: { pkgs, ... }:
{ {
xsession = { xsession = {
enable = true; enable = true;

View File

@@ -26,6 +26,7 @@ rec {
]; ];
deanKeys = [ deanKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFeXvPyHIYBPtn6QJtOrjlBUsZjDonVRfmWqTTM2ITWx nixos@nixos"
]; ];
alexKeys = [ alexKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER"
@@ -51,4 +52,10 @@ rec {
"AAAAB3NzaC1yc2EAAAADAQABAAACAQC4ayU9sly58EHQ2YdrnoJ5o0mFD8I8UiDvN3kVh6oSMMQ9wkVzLUY6wUzlc0uq3P/OYco9mURMt83C+lY4UC+jvN09nIEHV7yVJWsKV3ntmnEqM63e9cOWnpC9XA1MSha7xrf9DaO/doxST4fY6ixZA+nbE0bFgNTqyjzdya7pCamAdnPqKqwUEha+0KfpA8TJlrfgrDLd65f2/+jLU8fhTkU6yhrJ9Piq7C+RwVTu/dlrp50PNirfQRSa7vUPNS8Y973XtK6jzB/xS2Qc6iGJ+4QcCy6lgu2xksO/MNIimZYGOCP2yx6/GDp/gnOlAktrJ3flMycJdEHkZVH61HfQV76O/mY3tck/SiCwhuNxXw0uh9wf4UO8JHlnJcsIsBkSBemJsxQul+G7kV4EV/gqW/iO5U2nKmDqbwNWigO9mN44LqBOwsnAnu78kiSE8sNCEdSy/qVWloBw4VyT/emvmTwP1okh/CKNnu0/HmfSNL6Vib1XuvKSPvrUIOLMrSeRdtu85LrWaS0CvKEoMrIgpvc+3jHtdbxwINE3JBGrbXvfe20CuHl6Fx0ONkhirRmrjG7iUjV/4c6nS2aguPVsGi7q3GYvtz7cNEe3XbfpZaHzrCncnoQPbnSDLjHdeZf4O5Aew6iOwwkpgBBDA3lJO55ujq2vNbgkpH3hmQjltQ==" "AAAAB3NzaC1yc2EAAAADAQABAAACAQC4ayU9sly58EHQ2YdrnoJ5o0mFD8I8UiDvN3kVh6oSMMQ9wkVzLUY6wUzlc0uq3P/OYco9mURMt83C+lY4UC+jvN09nIEHV7yVJWsKV3ntmnEqM63e9cOWnpC9XA1MSha7xrf9DaO/doxST4fY6ixZA+nbE0bFgNTqyjzdya7pCamAdnPqKqwUEha+0KfpA8TJlrfgrDLd65f2/+jLU8fhTkU6yhrJ9Piq7C+RwVTu/dlrp50PNirfQRSa7vUPNS8Y973XtK6jzB/xS2Qc6iGJ+4QcCy6lgu2xksO/MNIimZYGOCP2yx6/GDp/gnOlAktrJ3flMycJdEHkZVH61HfQV76O/mY3tck/SiCwhuNxXw0uh9wf4UO8JHlnJcsIsBkSBemJsxQul+G7kV4EV/gqW/iO5U2nKmDqbwNWigO9mN44LqBOwsnAnu78kiSE8sNCEdSy/qVWloBw4VyT/emvmTwP1okh/CKNnu0/HmfSNL6Vib1XuvKSPvrUIOLMrSeRdtu85LrWaS0CvKEoMrIgpvc+3jHtdbxwINE3JBGrbXvfe20CuHl6Fx0ONkhirRmrjG7iUjV/4c6nS2aguPVsGi7q3GYvtz7cNEe3XbfpZaHzrCncnoQPbnSDLjHdeZf4O5Aew6iOwwkpgBBDA3lJO55ujq2vNbgkpH3hmQjltQ=="
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBEBce6E/XCdo8+dC4PPyyTsO/Z0BZxuz0IrTLaGehrT weitzman.micah@gmail.com" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBEBce6E/XCdo8+dC4PPyyTsO/Z0BZxuz0IrTLaGehrT weitzman.micah@gmail.com"
]; ];
benKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
];
interviewKeys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDr3Rim92K0aNWh2wCZjZMj927H6NZMvw+Jg5giVEklv/eeXlJn81xm9kFsqWOmN0IyS4X+2V2G/43t4C+REmzMKjkzTu9u6SJi+pC3jdJRm80sJCz2LBdRjPaY3CEubiUdxWvjisE8wUI1YuxxdegJpcemvhZXBfDU+DOqNEtF9KiPhXFMOoGU18k5AqFatdmE4z0H158cc6rCxdEiM8s+H6AJDA+xZSn9BPSx2I/ySRapoN0qJDloV19795ggnegBOjNuGejnKI0RZ8CyTcf1945Yi8/O/i/IChRlxiArjgAbC2DItkQig8YyQYz6WlKE9bwruMqe+8mgBAfuQXH8yTADwD1156VCRGoYAorAz4CLm73oGKtx4pa6WFsklWAIK1UEAhuLT6FKaJ/mmfKxcqdHxj+29FNo3d2Pam/ecFd0aERi5TExH5GKZr+LI7yKQmgk6laiR0n1wZuDwlNN7+69GH+ScxRngGCkc3RdTToqXzEaN3B6EyiAN/sAUgs= finn@LAPTOP-JI7BSSRJ"
];
} }

19
nixos/kubernetes.nix Normal file
View File

@@ -0,0 +1,19 @@
{ pkgs, config, makeEnable, ... }:
makeEnable config "modules.railbirdKubernetesNode" true {
environment.etc."kubernetes/ca.crt" = {
text = builtins.readFile (pkgs.writeText "ca.crt" (builtins.fromBase64 "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUVMVENDQXBXZ0F3SUJBZ0lSQUxOeE9UN0o3Ti9lSzZlZHA5TGJLQUl3RFFZSktvWklodmNOQVFFTEJRQXcKTHpFdE1Dc0dBMVVFQXhNa00ySTJOMk0yTnpndE56STVNeTAwWVRJekxUZzNaV0l0WTJOaU1UWmpZV0ZrTXpGbQpNQ0FYRFRJek1USXlPVEU1TlRRME1sb1lEekl3TlRNeE1qSXhNakExTkRReVdqQXZNUzB3S3dZRFZRUURFeVF6CllqWTNZelkzT0MwM01qa3pMVFJoTWpNdE9EZGxZaTFqWTJJeE5tTmhZV1F6TVdZd2dnR2lNQTBHQ1NxR1NJYjMKRFFFQkFRVUFBNElCandBd2dnR0tBb0lCZ1FDVVlVdVRycERid1VTMkIzU1lVb2E3TEk1bWk4Tk5yMGxEZTF3NAozeVBwVm51NnVidm5UTm0yai92ODhIWXdFamxwcEVnNEhqaFA3WUVKOGdzR2RnVUNwSWFQV1RwaWZWbUE3RTRvCjJEYkpEaWVQa2tVR2tOTDB3aENDbE9PY08waHl4ZGs5UG9sNXdSemNpMGw2elNhbEU2REI0ckpybUI1UHBsL0EKdDJLQVZWcXB3YnlubWJpanI0eVpoN0JwN0xmYUlyRnRobHYyWlBFakxmUEx6N1l0aEJ3OS9pVXQ5NG1MTXlXWgpCcHlnQTV5L0NvY1FRbm5GTW5VMW8wZVVkMzdZTDd6RXJmSXh4L0FtTDEwU3EwcWRGWGlZT0pKcXViVVJiZFM4CkRaNmR5SGRYK1VseFBsczJSbHg5bkRhaU5HRkpkenFISnpEZE9sek4za2tkRFFvTzh4VWRIOWVrRlU3ck93a1AKNU5wdWJTd3JkMUZPR0hoK0VrbnVnbkVRRDRPaXAvWVE3SVVqM0FmbTVBZzJsYTlrNFdKUmdqQUNia1EyK2s5SQpzRm1QbW1NVkhuOW5lcENNaVlRTWpYN0FwWncwaXNEUGVWSzVFdVFlSW1ndTd1Tm9WOFI1VndHMFhvQkNYejRTClVxWXYxMXVFc01xRnUwN1p3bHpuc3hubTB1RUNBd0VBQWFOQ01FQXdEZ1lEVlIwUEFRSC9CQVFEQWdJRU1BOEcKQTFVZEV3RUIvd1FGTUFNQkFmOHdIUVlEVlIwT0JCWUVGSTczR3pubWVFQ0pPZHhKQUV6bWpoWWdHVkt0TUEwRwpDU3FHU0liM0RRRUJDd1VBQTRJQmdRQW0xOXpsbTNXVmVQZmxBNlpoL0Z4dkU4TWlyckpGNmptSnpSckJDRU01CkR3a1NtWTNkdk9OcUNZZWVOYjQreFdYV1E4ZVZLVmxQZGtvVzNWN0g1eG5KNjNkWFJOTjJsUTNKcFNURzMreVAKT21wNlhHWTltbWF0ZEh3eVY3TjRoMTBhS0VXQXVSaHkxNDhzZEpaTFlqMExiUjQycENWWWhFUDREM1FqN0tqTgpQSmUrY1I4TlNwaVltREg1eTg4SnF1Ynp0ajVOVmNEai9pTjloLzcvR2FqYlU2bENnTi9TeFpnaTljTkdqeFNiCkpIRkhFMk1wM3o5c2pzaWVUWE1wbExxSzA0NVRRMklCcW5KeU1kS2t2U05rUlVDYnoyeVhkaUlPS3R2VTRseTAKaDg4NHo5UDVKUTlieGUrNmN3WUM0a3kzRzVXWU1uKytSVXN1Q2s0U2NzcmJadE05anBLbnovVHlnTWRWVEM1dwpTaXE2T0hLdEFuaDhBeDFMRUtpY2c5RkxkNk9EeFIzT1ZLdStmVVBWNFhIQVdKbm12RWxHbGl2am5lSGlFK09MCmR6Z2IvQ2ZCRUdIWUJWYzJQRElod0JtVWRvRVovdDNVanZtU0k0NlpibFlwV29kSnZMRndnZTJIeFNpdlJsTFcKVWgvb1BXWDVOL0NIOUkzNEhUQWhJNDg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"));
mode = "0644";
};
services.kubernetes = {
roles = ["node"];
kubelet = {
extraOpts = "--cloud-provider=external";
registerNode = true;
kubeconfig = {
server = "https://34.31.205.230";
caFile = "/etc/kubernetes/ca.crt";
};
};
};
}

View File

@@ -0,0 +1,39 @@
{ lib, pkgs, config, inputs, forEachUser, ... }:
{
imports = [
../configuration.nix
];
services.xserver.enable = true;
environment.systemPackages = with pkgs; [
sublime
vlc
];
modules.desktop.enable = false;
modules.plasma.enable = false;
imalison.nixOverlay.enable = false;
modules.wsl.enable = true;
networking.hostName = "bencbox";
wsl.defaultUser = "ben";
system.stateVersion = "22.05";
home-manager.users = forEachUser {
home.stateVersion = "22.05";
};
users.users.ben = {
extraGroups = [
"audio"
"adbusers"
"disk"
"docker"
"networkmanager"
"openrazer"
"plugdev"
"syncthing"
"systemd-journal"
"video"
] ++ ["wheel"];
};
}

View File

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

View File

@@ -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

@@ -45,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.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
];
modules.wsl.enable = true;
networking.hostName = "strixi-minaj-wsl";
wsl.defaultUser = "imalison";
system.stateVersion = "23.11"; # Did you read the comment?
home-manager.users = forEachUser {
home.stateVersion = "23.11";
};
programs.gnupg = {
agent = {
pinentryPackage = pkgs.pinentry-curses;
enable = true;
enableSSHSupport = true;
};
};
nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u"
"electron-12.2.3"
"etcher"
"electron-19.1.9"
"openssl-1.1.1w"
"nix-2.16.2"
];
}

View File

@@ -3,6 +3,7 @@
{ {
imports = [ imports = [
../configuration.nix ../configuration.nix
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
]; ];
modules.base.enable = true; modules.base.enable = 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;
}; };

Binary file not shown.

Binary file not shown.

View File

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

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,6 +17,7 @@ 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"; };
}; };
allDevices = builtins.attrNames devices; allDevices = builtins.attrNames devices;
in in

View File

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

View File

@@ -7,13 +7,15 @@ makeEnable config "modules.wsl" false {
modules.base.enable = false; modules.base.enable = false;
modules.desktop.enable = false; modules.desktop.enable = false;
modules.xmonad.enable = false; modules.xmonad.enable = false;
modules.plasma.enable = false;
# Update timezone automatically # Update timezone automatically
services.tzupdate.enable = true; services.tzupdate.enable = true;
wsl.wslConf.automount.root = "/mnt";
wsl = { wsl = {
enable = true; enable = true;
automountPath = "/mnt";
startMenuLaunchers = true; startMenuLaunchers = true;
nativeSystemd = true; nativeSystemd = true;
}; };