Compare commits

..

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

109 changed files with 911 additions and 3580 deletions

6
.gitmodules vendored
View File

@ -1,12 +1,12 @@
[submodule "dotfiles/config/taffybar/taffybar"] [submodule "dotfiles/config/taffybar/taffybar"]
path = dotfiles/config/taffybar/taffybar path = dotfiles/config/taffybar/taffybar
url = git@github.com:taffybar/taffybar.git url = ../../taffybar/taffybar.git
[submodule "dotfiles/xmonad/xmonad"] [submodule "dotfiles/xmonad/xmonad"]
path = dotfiles/config/xmonad/xmonad path = dotfiles/config/xmonad/xmonad
url = git@github.com:xmonad/xmonad.git url = ../xmonad.git
[submodule "dotfiles/xmonad/xmonad-contrib"] [submodule "dotfiles/xmonad/xmonad-contrib"]
path = dotfiles/config/xmonad/xmonad-contrib path = dotfiles/config/xmonad/xmonad-contrib
url = git@github.com:xmonad/xmonad-contrib.git url = ../xmonad-contrib.git
[submodule "dotfiles/config/alacritty/themes"] [submodule "dotfiles/config/alacritty/themes"]
path = dotfiles/config/alacritty/themes path = dotfiles/config/alacritty/themes
url = https://github.com/alacritty/alacritty-theme url = https://github.com/alacritty/alacritty-theme

8
.travis.yml Normal file
View File

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

View File

@ -1,15 +0,0 @@
import = ["/home/imalison/.config/alacritty/themes/themes/dracula.toml"]
[font]
size = 8
[scrolling]
history = 10000
multiplier = 3
[window]
decorations = "full"
[window.padding]
x = 10
y = 10

View File

@ -0,0 +1,34 @@
scrolling:
# How many lines of scrollback to keep,
# '0' will disable scrolling.
history: 10000
# Number of lines the viewport will move for every line
# scrolled when scrollback is enabled (history > 0).
multiplier: 3
# Faux Scrolling
#
# The `faux_multiplier` setting controls the number
# of lines the terminal should scroll when the alternate
# screen buffer is active. This is used to allow mouse
# scrolling for applications like `man`.
#
# To disable this completely, set `faux_multiplier` to 0.
faux_multiplier: 3
# Automatically scroll to the bottom when new text is written
# to the terminal.
auto_scroll: false
font:
size: 8
window:
padding:
x: 10
y: 10
decorations: full
import:
- ~/.config/alacritty/themes/themes/dracula.yaml

View File

@ -1,20 +0,0 @@
output DP-0
off
output DP-1
off
output HDMI-0
off
output DP-3
off
output DP-4
off
output DP-5
off
output DP-6
off
output DP-2
crtc 0
mode 2560x1600
pos 0x0
rate 240.00
x-prop-non_desktop 0

View File

@ -1 +0,0 @@
DP-2 00ffffffffffff0009e5580c0000000001210104b527187803bbc5ae503fb7250c515500000001010101010101010101010101010101c07200a0a040c8603020360084f21000001a000000fd0c30f0b1b176010a202020202020000000fe00424f452043510a202020202020000000fc004e4531383051444d2d4e4d310a029602030f00e3058080e606050195731000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa702079020021001d280f7409000a400680dd2a511824b249120e023554b060ec64662a1378220014ffed1185ff099f002f001f003f06c700020005002b000c27003cef00002700303b0000810015741a0000030b30f0006095107310f0000000008d00000000000000000000000000000000000000000000000000000000bc90

View File

@ -0,0 +1,63 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
htop_version=3.2.2
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=46
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=PERCENT_CPU
.tree_sort_key=PERCENT_CPU
.tree_view=0
.tree_view_always_by_pid=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=0
.tree_view_always_by_pid=0
.sort_direction=-1
.tree_sort_direction=1
.all_branches_collapsed=0

View File

@ -1,699 +0,0 @@
{
"nodes": {
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
"locked": {
"lastModified": 1689068808,
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1685518550,
"narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_4": {
"inputs": {
"systems": "systems_4"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"fourmolu-011": {
"flake": false,
"locked": {
"narHash": "sha256-g/yDZXeLCHq/iXoZTaTYSb8l9CMny3AKsRQgWElagZI=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/fourmolu-0.11.0.0/fourmolu-0.11.0.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/fourmolu-0.11.0.0/fourmolu-0.11.0.0.tar.gz"
}
},
"fourmolu-012": {
"flake": false,
"locked": {
"narHash": "sha256-yru8ls67DMM6WSeVU6xDmmwa48I8S9CUv9NBaxSQ29M=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/fourmolu-0.12.0.0/fourmolu-0.12.0.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/fourmolu-0.12.0.0/fourmolu-0.12.0.0.tar.gz"
}
},
"git-ignore-nix": {
"inputs": {
"nixpkgs": [
"taffybar",
"nixpkgs"
]
},
"locked": {
"lastModified": 1660459072,
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"ref": "master",
"repo": "gitignore.nix",
"type": "github"
}
},
"git-ignore-nix_2": {
"inputs": {
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1703887061,
"narHash": "sha256-gGPa9qWNc6eCXT/+Z5/zMkyYOuRZqeFZBDbopNZQkuY=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "43e1aa1308018f37118e34d3a9cb4f5e75dc11d5",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"ref": "master",
"repo": "gitignore.nix",
"type": "github"
}
},
"gitignore": {
"flake": false,
"locked": {
"lastModified": 1660459072,
"narHash": "sha256-8DFJjXG8zqoONA1vXtgeKXy68KdJL5UaXR8NtVMUbx8=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "a20de23b925fd8264fd7fad6454652e142fd7f73",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github"
}
},
"gtk-sni-tray": {
"inputs": {
"flake-utils": [
"taffybar",
"flake-utils"
],
"git-ignore-nix": [
"taffybar",
"git-ignore-nix"
],
"nixpkgs": [
"taffybar",
"nixpkgs"
],
"status-notifier-item": [
"taffybar",
"status-notifier-item"
]
},
"locked": {
"lastModified": 1663379298,
"narHash": "sha256-m18+G7V1N+g/pPeKJG9hkblGA5c8QTnUYnsU5t14sOw=",
"owner": "taffybar",
"repo": "gtk-sni-tray",
"rev": "1927d86308d34b5d21a709cf8ff5332ec5d37de4",
"type": "github"
},
"original": {
"owner": "taffybar",
"ref": "master",
"repo": "gtk-sni-tray",
"type": "github"
}
},
"gtk-strut": {
"inputs": {
"flake-utils": [
"taffybar",
"flake-utils"
],
"git-ignore-nix": [
"taffybar",
"git-ignore-nix"
],
"nixpkgs": [
"taffybar",
"nixpkgs"
]
},
"locked": {
"lastModified": 1663377859,
"narHash": "sha256-UrBd+R3NaJIDC2lt5gMafS3KBeLs83emm2YorX2cFCo=",
"owner": "taffybar",
"repo": "gtk-strut",
"rev": "d946eb230cdccf5afc063642b3215723e555990b",
"type": "github"
},
"original": {
"owner": "taffybar",
"ref": "master",
"repo": "gtk-strut",
"type": "github"
}
},
"haskell-hie-bios": {
"flake": false,
"locked": {
"lastModified": 1686930638,
"narHash": "sha256-gfcxxHtZ2jUsiKNn/O4jEkfWF/2H04aTnaIvPDbtNlQ=",
"owner": "haskell",
"repo": "hie-bios",
"rev": "3d4fadfb0dc44cb287db9897ecfb503899d33513",
"type": "github"
},
"original": {
"owner": "haskell",
"repo": "hie-bios",
"type": "github"
}
},
"haskell-implicit-hie-cradle": {
"flake": false,
"locked": {
"lastModified": 1686495518,
"narHash": "sha256-OAe+zOkMZuoTfVEMnxnCT1cmPgRF/riAR8nVdomnwxo=",
"owner": "smunix",
"repo": "implicit-hie-cradle",
"rev": "d6aa00355898469af56cfd5e62f7fc8bd9959ded",
"type": "github"
},
"original": {
"owner": "smunix",
"ref": "smunix-patch-hls-0.5-1",
"repo": "implicit-hie-cradle",
"type": "github"
}
},
"haskell-language-server": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils_3",
"fourmolu-011": "fourmolu-011",
"fourmolu-012": "fourmolu-012",
"gitignore": "gitignore",
"haskell-hie-bios": "haskell-hie-bios",
"haskell-implicit-hie-cradle": "haskell-implicit-hie-cradle",
"hiedb": "hiedb",
"hlint-35": "hlint-35",
"hlint-36": "hlint-36",
"lsp": "lsp",
"lsp-test": "lsp-test",
"lsp-types": "lsp-types",
"nixpkgs": "nixpkgs_2",
"ormolu-052": "ormolu-052",
"ormolu-07": "ormolu-07",
"stylish-haskell-0145": "stylish-haskell-0145"
},
"locked": {
"lastModified": 1693851896,
"narHash": "sha256-799JUHpBd2iMRCrTYDme5RsROKnIwSKBe2xYxgVN7QI=",
"owner": "colonelpanic8",
"repo": "haskell-language-server",
"rev": "ea368cef0673059fff95e953ef983109b5979dbc",
"type": "github"
},
"original": {
"owner": "colonelpanic8",
"ref": "goto-dependency-definition-2",
"repo": "haskell-language-server",
"type": "github"
}
},
"hiedb": {
"flake": false,
"locked": {
"lastModified": 1691542357,
"narHash": "sha256-90ftphhoIo0CklJrjfCGQrZIUKZfdMJ2Og6tep9dmJ8=",
"owner": "nlander",
"repo": "HieDb",
"rev": "4eebfcf8fab54f24808e6301227d77ae64d2509c",
"type": "github"
},
"original": {
"owner": "nlander",
"ref": "all-new-functions",
"repo": "HieDb",
"type": "github"
}
},
"hlint-35": {
"flake": false,
"locked": {
"narHash": "sha256-qQNUlQQnahUGEO92Lm0RwjTGBGr2Yaw0KRuFRMoc5No=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/hlint-3.5/hlint-3.5.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/hlint-3.5/hlint-3.5.tar.gz"
}
},
"hlint-36": {
"flake": false,
"locked": {
"narHash": "sha256-fH4RYnWeuBqJI5d3Ba+Xs0BxYr0IYFH1OWO3k2iHGlU=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/hlint-3.6.1/hlint-3.6.1.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/hlint-3.6.1/hlint-3.6.1.tar.gz"
}
},
"lsp": {
"flake": false,
"locked": {
"narHash": "sha256-HcEfdYUrCHufEa+10M2wESjnK41xM/msd+t6r6JwQO0=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-2.2.0.0/lsp-2.2.0.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-2.2.0.0/lsp-2.2.0.0.tar.gz"
}
},
"lsp-test": {
"flake": false,
"locked": {
"narHash": "sha256-E1D3X2+I9ZTZLpHDEDTXexQFYpyG5byOFRIvRTeBsn8=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-test-0.16.0.0/lsp-test-0.16.0.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-test-0.16.0.0/lsp-test-0.16.0.0.tar.gz"
}
},
"lsp-types": {
"flake": false,
"locked": {
"narHash": "sha256-Oa5HuKdsdTSQUKtuSt06zVAq19Qxq5IJZObrnPwlB6s=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-types-2.0.2.0/lsp-types-2.0.2.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/lsp-types-2.0.2.0/lsp-types-2.0.2.0.tar.gz"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1702312524,
"narHash": "sha256-gkZJRDBUCpTPBvQk25G0B7vfbpEYM5s5OZqghkjZsnE=",
"path": "/nix/store/4fgs7yzsy2dqnjw8j42qlp9i1vgarzy0-source",
"rev": "a9bf124c46ef298113270b1f84a164865987a91c",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1686874404,
"narHash": "sha256-u2Ss8z+sGaVlKtq7sCovQ8WvXY+OoXJmY1zmyxITiaY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "efc10371d5c5b8d2d58bab6c1100753efacfe550",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "haskell-updates",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1689098530,
"narHash": "sha256-fxc/9f20wRyo/5ydkmZkX/Sh/ULa7RcT8h+cUv8p/44=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f2406198ea0e4e37d4380d0e20336c575b8f8ef9",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1666603677,
"narHash": "sha256-apAEIj+z1iwMaMJ4tB21r/VTetfGDLDzuhXRHJknIAU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "074da18a72269cc5a6cf444dce42daea5649b2fe",
"type": "github"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_5": {
"locked": {
"lastModified": 1702312524,
"narHash": "sha256-gkZJRDBUCpTPBvQk25G0B7vfbpEYM5s5OZqghkjZsnE=",
"path": "/nix/store/4fgs7yzsy2dqnjw8j42qlp9i1vgarzy0-source",
"rev": "a9bf124c46ef298113270b1f84a164865987a91c",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"ormolu-052": {
"flake": false,
"locked": {
"narHash": "sha256-H7eqId488RBRxcf7flgJefAZmRgFJASJva+Oy7GG4q4=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/ormolu-0.5.2.0/ormolu-0.5.2.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/ormolu-0.5.2.0/ormolu-0.5.2.0.tar.gz"
}
},
"ormolu-07": {
"flake": false,
"locked": {
"narHash": "sha256-5M5gNzSvsiQH1+0oexRByzf5EIET+0BFwR4fLIr2P7g=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/ormolu-0.7.1.0/ormolu-0.7.1.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/ormolu-0.7.1.0/ormolu-0.7.1.0.tar.gz"
}
},
"root": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs",
"taffybar": "taffybar",
"xmonad": "xmonad_2"
}
},
"status-notifier-item": {
"inputs": {
"flake-utils": [
"taffybar",
"flake-utils"
],
"git-ignore-nix": [
"taffybar",
"git-ignore-nix"
],
"nixpkgs": [
"taffybar",
"nixpkgs"
]
},
"locked": {
"lastModified": 1641783528,
"narHash": "sha256-wJymJfYPFj4/r1e4kT/wt9FEsyCXo5JkkcOoozpuhag=",
"owner": "taffybar",
"repo": "status-notifier-item",
"rev": "f4f9c66ab57fc42eeed0de8cfac9f5f9d30d9dc7",
"type": "github"
},
"original": {
"owner": "taffybar",
"repo": "status-notifier-item",
"type": "github"
}
},
"stylish-haskell-0145": {
"flake": false,
"locked": {
"narHash": "sha256-EE7RFQ6q4Ek8daRgOpNMGepYLa9o8cM4OLjTNUSHQf0=",
"type": "tarball",
"url": "https://hackage.haskell.org/package/stylish-haskell-0.14.5.0/stylish-haskell-0.14.5.0.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://hackage.haskell.org/package/stylish-haskell-0.14.5.0/stylish-haskell-0.14.5.0.tar.gz"
}
},
"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"
}
},
"systems_4": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"taffybar": {
"inputs": {
"flake-utils": "flake-utils_2",
"git-ignore-nix": "git-ignore-nix",
"gtk-sni-tray": "gtk-sni-tray",
"gtk-strut": "gtk-strut",
"haskell-language-server": "haskell-language-server",
"nixpkgs": "nixpkgs_3",
"status-notifier-item": "status-notifier-item",
"xmonad": "xmonad"
},
"locked": {
"lastModified": 1696612500,
"narHash": "sha256-Q19F91yVQviqxgY+FkvEwtX2vcw414eVtK8erim0NrU=",
"owner": "taffybar",
"repo": "taffybar",
"rev": "46eba89c2a4d4ffefe42c3ee4506d1b74c8e61fd",
"type": "github"
},
"original": {
"owner": "taffybar",
"repo": "taffybar",
"type": "github"
}
},
"unstable": {
"locked": {
"lastModified": 1689098530,
"narHash": "sha256-fxc/9f20wRyo/5ydkmZkX/Sh/ULa7RcT8h+cUv8p/44=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f2406198ea0e4e37d4380d0e20336c575b8f8ef9",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"unstable_2": {
"locked": {
"lastModified": 1704538339,
"narHash": "sha256-1734d3mQuux9ySvwf6axRWZRBhtcZA9Q8eftD6EZg6U=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "46ae0210ce163b3cba6c7da08840c1d63de9c701",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"xmonad": {
"inputs": {
"flake-utils": [
"taffybar",
"flake-utils"
],
"git-ignore-nix": [
"taffybar",
"git-ignore-nix"
],
"nixpkgs": [
"taffybar",
"nixpkgs"
],
"unstable": "unstable"
},
"locked": {
"lastModified": 1687976934,
"narHash": "sha256-hUZmKy3jJ1+5rTGeQzfNR+LxgzmLaaeRVnbsJMEVw0Q=",
"owner": "xmonad",
"repo": "xmonad",
"rev": "1aac6611d82065c9198e5584176058a9483fcbb0",
"type": "github"
},
"original": {
"owner": "xmonad",
"ref": "master",
"repo": "xmonad",
"type": "github"
}
},
"xmonad_2": {
"inputs": {
"flake-utils": "flake-utils_4",
"git-ignore-nix": "git-ignore-nix_2",
"nixpkgs": "nixpkgs_5",
"unstable": "unstable_2"
},
"locked": {
"lastModified": 1702895348,
"narHash": "sha256-ADRTw4DTfDCmsSFFWZKmvdmIjnEVY7pjjUxYytKXy1E=",
"owner": "xmonad",
"repo": "xmonad",
"rev": "c4cf4715f736fed77fb2af622c0760259ac2cf43",
"type": "github"
},
"original": {
"owner": "xmonad",
"ref": "master",
"repo": "xmonad",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View File

@ -2,14 +2,11 @@
inputs = { inputs = {
flake-utils.url = github:numtide/flake-utils; flake-utils.url = github:numtide/flake-utils;
xmonad.url = github:xmonad/xmonad/master; xmonad.url = github:xmonad/xmonad/master;
taffybar.url = "github:taffybar/taffybar"; taffybar.url = path:./taffybar;
}; };
outputs = { self, flake-utils, taffybar, nixpkgs, xmonad }: outputs = { self, flake-utils, taffybar, nixpkgs, xmonad }:
let let
hoverlay = final: prev: hself: hsuper: { hoverlay = final: prev: hself: hsuper: {
taffybar = hsuper.taffybar.overrideAttrs (old: {
doHaddock = false;
});
imalison-taffybar = prev.haskell.lib.addPkgconfigDepends ( imalison-taffybar = prev.haskell.lib.addPkgconfigDepends (
hself.callCabal2nix "imalison-taffybar" hself.callCabal2nix "imalison-taffybar"
( (

@ -1 +1 @@
Subproject commit a82a8a0cffb34b5eae38e46d88f02641bf8a8fe5 Subproject commit 067e0bff51e470ebffc4e9fc749656745461ce73

View File

@ -226,14 +226,12 @@ main = do
, startWidgets = [myWorkspaces, myLayout] , startWidgets = [myWorkspaces, myLayout]
} }
) )
, ( "strixi-minaj"
, baseConfig { endWidgets = laptopEndWidgets }
)
, ( "jay-lenovo" , ( "jay-lenovo"
, baseConfig { endWidgets = laptopEndWidgets } , baseConfig { endWidgets = laptopEndWidgets }
) ),
, ( "nixquick" ( "nixquick"
, baseConfig { endWidgets = [ myTray , myMpris ] } , baseConfig { endWidgets = [ myTray , myMpris ]
}
) )
] ]

@ -1 +1 @@
Subproject commit 229c7baf006bf68e76ec1305f55d7d42a6cf7042 Subproject commit b5ef6265b87338f30dc9fc055c86d1ec021527a7

View File

@ -4,7 +4,6 @@
(setq mc/cmds-to-run-for-all (setq mc/cmds-to-run-for-all
'( '(
TeX-insert-backslash TeX-insert-backslash
align
backward-sexp backward-sexp
beginning-of-buffer beginning-of-buffer
beginning-of-visual-line beginning-of-visual-line
@ -55,14 +54,12 @@
sp-remove-active-pair-overlay sp-remove-active-pair-overlay
sp-splice-sexp sp-splice-sexp
sp-splice-sexp-killing-backward sp-splice-sexp-killing-backward
string-inflection-all-cycle
string-inflection-toggle string-inflection-toggle
tern-ac-dot-complete tern-ac-dot-complete
transpose-sexps transpose-sexps
transpose-words transpose-words
undo-redo undo-redo
universal-argument-minus universal-argument-minus
upcase-region
wdired-finish-edit wdired-finish-edit
yaml-electric-backspace yaml-electric-backspace
yaml-electric-dash-and-dot yaml-electric-dash-and-dot
@ -86,7 +83,6 @@
imalison:multiple-cursors-hydra/mc/mark-previous-like-this imalison:multiple-cursors-hydra/mc/mark-previous-like-this
imalison:multiple-cursors-hydra/nil imalison:multiple-cursors-hydra/nil
isearch-delete-char isearch-delete-char
lsp-ui-doc--handle-mouse-movement
make-frame make-frame
overwrite-mode overwrite-mode
smex smex

View File

@ -1514,26 +1514,20 @@ https://github.com/alpaker/Fill-Column-Indicator/issues/21 for more details
(advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company) (advice-add 'company-call-frontends :before #'fci-on-off-fci-before-company)
(add-hook 'prog-mode-hook 'fci-mode))) (add-hook 'prog-mode-hook 'fci-mode)))
#+END_SRC #+END_SRC
** indent-bars ** highlight-indent-guides
#+begin_src emacs-lisp If the load-theme hook from this package starts causing trouble check for
(use-package indent-bars custom-set-faces in your custom file.
:disabled t #+BEGIN_SRC emacs-lisp
:straight (indent-bars :type git :host github :repo "jdtsmith/indent-bars") (use-package highlight-indent-guides
:commands highlight-indent-guides-mode
:diminish highlight-indent-guides-mode
:preface
(progn
(add-hook 'prog-mode-hook 'highlight-indent-guides-mode))
:config :config
(require 'indent-bars-ts) ; not needed with straight (progn
:custom (setq highlight-indent-guides-method 'fill)))
(indent-bars-treesit-support t) #+END_SRC
(indent-bars-treesit-ignore-blank-lines-types '("module"))
;; Add other languages as needed
(indent-bars-treesit-scope '((python function_definition class_definition for_statement
if_statement with_statement while_statement)))
;; wrap may not be needed if no-descend-list is enough
;; (indent-bars-treesit-wrap '((python argument_list parameters ; for python, as an example
;; list list_comprehension
;; dictionary dictionary_comprehension
;; parenthesized_expression subscript)))
:hook ((prog-mode) . indent-bars-mode))
#+end_src
** man-mode ** man-mode
Man page escape sequences aren't properly handled by emacs pager. This function Man page escape sequences aren't properly handled by emacs pager. This function
fixes that, but for now, it needs to be run manually, since I haven't figured fixes that, but for now, it needs to be run manually, since I haven't figured
@ -1791,8 +1785,7 @@ bind-key and global-set-key forms.
(defun imalison:do-rg-default-directory (&rest args) (defun imalison:do-rg-default-directory (&rest args)
(interactive) (interactive)
(let ((consult-ripgrep-args (concat consult-ripgrep-args " --no-ignore" " --hidden"))) (apply 'consult-ripgrep default-directory args))
(apply 'consult-ripgrep default-directory args)))
(emit-prefix-selector imalison:do-rg (emit-prefix-selector imalison:do-rg
consult-ripgrep consult-ripgrep
@ -2323,13 +2316,6 @@ I don't use auto-complete at all, so I have set up a hook to automatically disab
(unbind-key "C-j" python-mode-map) (unbind-key "C-j" python-mode-map)
(add-hook 'python-mode-hook #'imalison:python-mode))) (add-hook 'python-mode-hook #'imalison:python-mode)))
#+END_SRC #+END_SRC
*** ruby
#+begin_src emacs-lisp
(use-package ruby-mode
:config
(setf (alist-get 'ruby-ts-mode apheleia-mode-alist)
'(rubocop)))
#+end_src
*** go *** go
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package go-mode (use-package go-mode
@ -2636,13 +2622,6 @@ eval-last-sexp.
(shell-command-to-string "nix eval -I \"$NIX_PATH\" --expr '<nixpkgs>' --impure")))) (shell-command-to-string "nix eval -I \"$NIX_PATH\" --expr '<nixpkgs>' --impure"))))
:config :config
(progn (progn
(use-package apheleia
:demand t
:config
(progn
(add-to-list 'apheleia-formatters '(alejandra . ("alejandra")))
(setf (alist-get 'nix-mode apheleia-mode-alist)
'(alejandra))))
(setq nix-indent-function 'nix-indent-line))) (setq nix-indent-function 'nix-indent-line)))
(use-package lsp-nix (use-package lsp-nix
@ -2906,14 +2885,6 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
:defer t :defer t
:mode ("\\.kt\\'")) :mode ("\\.kt\\'"))
#+END_SRC #+END_SRC
*** swift
#+begin_src emacs-lisp
(use-package swift-mode)
#+end_src
*** groovy
#+begin_src emacs-lisp
(use-package groovy-mode)
#+end_src
*** vala *** vala
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package vala-mode (use-package vala-mode
@ -2960,10 +2931,6 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
(use-package protobuf-mode (use-package protobuf-mode
:defer t) :defer t)
#+END_SRC #+END_SRC
*** graphql
#+begin_src emacs-lisp
(use-package graphql-mode)
#+end_src
*** json-mode *** json-mode
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package json-mode (use-package json-mode
@ -2980,10 +2947,6 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
:mode (("\\.yaml\\'" . yaml-mode) :mode (("\\.yaml\\'" . yaml-mode)
("\\.yml\\'" . yaml-mode))) ("\\.yml\\'" . yaml-mode)))
#+END_SRC #+END_SRC
*** just-mode
#+begin_src emacs-lisp
(use-package just-mode)
#+end_src
*** es-mode *** es-mode
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package es-mode (use-package es-mode
@ -3004,11 +2967,6 @@ The following is taken from [[https://github.com/syl20bnr/spacemacs/blob/a650877
(use-package toml-mode (use-package toml-mode
:mode (("\\.toml\\'" . toml-mode))) :mode (("\\.toml\\'" . toml-mode)))
#+end_src #+end_src
*** terraform
#+begin_src emacs-lisp
(use-package terraform-mode
:mode (("\\.tf\\'" . terraform-mode)))
#+end_src
** Document ** Document
*** org *** org
My org-mode configuration now lives in its own file org-config.org. My org-mode configuration now lives in its own file org-config.org.
@ -3188,21 +3146,7 @@ My org-mode configuration now lives in its own file org-config.org.
:defer t :defer t
:config :config
(progn (progn
(setq git-link-use-commit t) (setq git-link-use-commit t)))
(defun git-link-commit-gitea (hostname dirname commit)
(format "https://%s/%s/commit/%s"
hostname
dirname
commit))
(defun git-link-gitea (hostname dirname filename branch commit start end)
(format "https://%s/%s/src/commit/%s/%s#L%s"
hostname
dirname
commit
filename
start))
(add-to-list 'git-link-remote-alist '("dev.railbird.ai" git-link-gitea))
(add-to-list 'git-link-commit-remote-alist '("dev.railbird.ai" git-link-gitea))))
#+END_SRC #+END_SRC
** magit-gitflow ** magit-gitflow
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
@ -3325,15 +3269,10 @@ emr (emacs refactor) provides support for refactoring in many programming langua
#+END_SRC #+END_SRC
** language-server-protocol (lsp) ** language-server-protocol (lsp)
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(defvar imalison:use-lsp nil)
(use-package lsp-mode (use-package lsp-mode
:defer 3
:commands lsp :commands lsp
:preface :preface
(defun imalison:lsp-deferred-when-enabled ()
(add-hook 'hack-local-variables-hook
(lambda ()
(when imalison:use-lsp
(lsp-deferred))) nil t))
(defun imalison:nix-develop-lsp-wrapper-function (argv) (defun imalison:nix-develop-lsp-wrapper-function (argv)
(append (append
(append (list "nix" "develop" "-I" "." "--impure" "--command") (append (list "nix" "develop" "-I" "." "--impure" "--command")
@ -3344,35 +3283,10 @@ emr (emacs refactor) provides support for refactoring in many programming langua
(use-package lsp-ui (use-package lsp-ui
:config :config
(progn (progn
(add-hook 'prog-mode-hook 'imalison:lsp-deferred-when-enabled)
(add-hook 'lsp-mode-hook 'lsp-ui-mode) (add-hook 'lsp-mode-hook 'lsp-ui-mode)
(setq lsp-ui-doc-position 'bottom))))) (setq lsp-ui-doc-position 'bottom)))))
#+END_SRC #+END_SRC
* Utility * Utility
** eat
#+begin_src emacs-lisp
(use-package eat
:preface
(progn
(defun imalison:avy-eat (arg)
(interactive "P")
(eat-emacs-mode)
(imalison:avy arg)))
:bind
(:map eat-mode-map
("C-c C-k" . eat-semi-char-mode)
:map eat-semi-char-mode-map
("C-c C-j" . eat-emacs-mode)
("C-j" . imalison:avy-eat))
:config
(progn
(setq eat--install-path
(file-name-directory
(file-truename (imalison:join-paths eat--install-path "eat.el"))))
(eat-compile-terminfo)
(setq eat-term-shell-integration-directory
(imalison:join-paths eat--install-path "integration"))))
#+end_src
** term ** term
The main thing I do here is restore a bunch of keybindings that are eliminated The main thing I do here is restore a bunch of keybindings that are eliminated
in term-mode. This makes term-mode 1000% more useful in term-mode. This makes term-mode 1000% more useful
@ -3454,12 +3368,6 @@ in term-mode. This makes term-mode 1000% more useful
term-projectile-switch) term-projectile-switch)
:config :config
(progn (progn
(use-package term-manager-eat
:demand t
:straight
(term-manager-eat :type git :files ("term-manager-eat.el")
:host github :repo "colonelpanic8/term-manager"))
(setq term-projectile-term-manager (term-projectile :build-term 'term-manager-eat-build-term))
(emit-prefix-selector imalison:term (emit-prefix-selector imalison:term
term-projectile-forward term-projectile-forward
term-projectile-create-new) term-projectile-create-new)
@ -3551,7 +3459,7 @@ crux-reopen-as-root-mode makes it so that any file owned by root will automatica
:config :config
(progn (progn
(add-to-list 'gptel-directives '(finish-code . "You are a large language model and a careful programmer. Provide code that completes what is provided and only code as output without any additional text, prompt or note.")) (add-to-list 'gptel-directives '(finish-code . "You are a large language model and a careful programmer. Provide code that completes what is provided and only code as output without any additional text, prompt or note."))
(setq gptel-model "gpt-4") ;; (setq gptel-model "gpt-4")
)) ))
#+end_src #+end_src
* Cooperation * Cooperation
@ -3655,6 +3563,15 @@ I had to disable this mode because something that it does messes with coding set
(progn (progn
(setq dtrt-indent-active-mode-line-info " [⟼]"))) (setq dtrt-indent-active-mode-line-info " [⟼]")))
#+END_SRC #+END_SRC
** indent-guide
#+BEGIN_SRC emacs-lisp
(use-package indent-guide
:disabled t
:config
(progn
(indent-guide-global-mode -1)
(setq indent-guide-delay 0.1)))
#+END_SRC
** rainbow-delimiters ** rainbow-delimiters
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package rainbow-delimiters (use-package rainbow-delimiters
@ -4139,12 +4056,7 @@ This also adds syntax highlighting for gradle
#+END_SRC #+END_SRC
** evil ** evil
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package evil (use-package evil :commands (evil-mode))
:commands (evil-mode)
:config
(use-package evil-collection
:config
(with-eval-after-load 'eat (evil-collection-eat-setup))))
#+END_SRC #+END_SRC
** hackernews ** hackernews
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp

View File

@ -157,14 +157,3 @@ This makes evil-mode play nice with org-fc
(setf (alist-get 'python-ts-mode apheleia-mode-alist) (setf (alist-get 'python-ts-mode apheleia-mode-alist)
(alist-get 'python-mode apheleia-mode-alist)))) (alist-get 'python-mode apheleia-mode-alist))))
#+end_src #+end_src
* Packages
#+begin_src emacs-lisp
(use-package org-drill)
#+end_src
* Disable wild notifactions
#+begin_src emacs-lisp
(setq org-wild-notifier-day-wide-alert-times nil)
#+end_src

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -10,7 +10,7 @@
cpr = cherry-pick-range cpr = cherry-pick-range
cam = commit -am cam = commit -am
clean-branches = "!r() { git branch --merged ${1-origin/master} | grep -v '*' | xargs -n1 git branch -d; }; r" clean-branches = "!r() { git branch --merged ${1-origin/master} | grep -v '*' | xargs -n1 git branch -d; }; r"
del-merged-branches = "!f() { git fetch $1 && git branch -r --merged $1/$2 | grep -v \"$1/$2$\" | sed \"s:$1/::\" | xargs -I {} sh -c \"git push $1 :{}\" _; }; f" del-merged-branches = "!f() { git fetch $1 && git branch -r --merged $1/$2 | awk -F/ \"/$1/ && !/$2$/ {print \\$2}\" | xargs -I {} git push $1 --delete {}; }; f"
clone = clone --recursive clone = clone --recursive
credit = "!f() { git commit --amend --author \"$1 <$2>\" -C HEAD; }; f" # Credit an author on the latest commit credit = "!f() { git commit --amend --author \"$1 <$2>\" -C HEAD; }; f" # Credit an author on the latest commit
co = checkout co = checkout
@ -50,7 +50,6 @@
tb = rev-parse --abbrev-ref --symbolic-full-name @{u} tb = rev-parse --abbrev-ref --symbolic-full-name @{u}
untracked = "!u() { git status -s | grep "??" | awk '{print $2}'; }; u" untracked = "!u() { git status -s | grep "??" | awk '{print $2}'; }; u"
which-branch = "!wb() { b="$(git symbolic-ref HEAD)" && echo ${b#refs/heads/}; }; wb" which-branch = "!wb() { b="$(git symbolic-ref HEAD)" && echo ${b#refs/heads/}; }; wb"
find-merge = "!sh -c 'commit=$0 && branch=${1:-HEAD} && (git rev-list $commit..$branch --ancestry-path | cat -n; git rev-list $commit..$branch --first-parent | cat -n) | sort -k2 -s | uniq -f1 -d | sort -n | tail -1 | cut -f2'"
[core] [core]
# Use custom `.gitignore` and `.gitattributes` # Use custom `.gitignore` and `.gitattributes`
@ -89,6 +88,12 @@
[rerere] [rerere]
enabled = false enabled = false
[url "ssh://git@github.com/uber/"]
insteadOf = https://github.com/uber/
[url "ssh://gitolite@code.uber.internal:2222/"]
insteadOf = https://code.uber.internal/
[branch] [branch]
autosetuprebase = always autosetuprebase = always

View File

@ -24,6 +24,7 @@ pom.xml
TAGS TAGS
# Vim # Vim
*.sw*
*.tmp* *.tmp*
# JavaScript # JavaScript
@ -74,7 +75,3 @@ cabal.project.local
# #
.direnv .direnv
/dotfiles/config/gtk-3.0/settings.ini /dotfiles/config/gtk-3.0/settings.ini
/untracked
railbird-infra-*.json

20
dotfiles/gtkrc-2.0 Normal file
View File

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

View File

@ -2,25 +2,12 @@
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
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(
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"),
@ -59,6 +46,11 @@ class BrightnessManager(object):
return float(self.current_brightness) / self.max_brightness return float(self.current_brightness) / self.max_brightness
IntelBrightnessManager = BrightnessManager.from_path(
"/sys/class/backlight/intel_backlight",
)
def build_parser(): def build_parser():
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
description='Interact with macbook brightness', description='Interact with macbook brightness',
@ -78,11 +70,6 @@ def build_parser():
if __name__ == '__main__': if __name__ == '__main__':
args = build_parser().parse_args() args = build_parser().parse_args()
symlink_path = os.readlink("/home/imalison/.config/brightness_manager/symlink") IntelBrightnessManager.increment_by_proportion(float(args.change) / 100)
if os.path.exists(symlink_path):
manager = BrightnessManager.from_path(symlink_path)
else:
manager = BrightnessManager.find_brightness()
manager.increment_by_proportion(float(args.change) / 100)
if args.do_print: if args.do_print:
print(int(manager.current_proportion * 100)) print(int(IntelBrightnessManager.current_proportion * 100))

View File

@ -1,7 +0,0 @@
#!/usr/bin/env sh
function nr {
nix run nixpkgs#"$@"
}
nr "$@"

View File

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

View File

@ -10,3 +10,5 @@ function split_by_char {
} }
split_by_char "$@" split_by_char "$@"

View File

@ -1,7 +0,0 @@
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)+altwin(swap_lalt_lwin)+imalison(ralt_as_hyper)+capslock(ctrl_modifier)" };
xkb_geometry { include "pc(pc105)" };
};

View File

@ -1,376 +0,0 @@
{
"nodes": {
"agenix": {
"inputs": {
"darwin": "darwin",
"home-manager": "home-manager_2",
"nixpkgs": [
"railbird-secrets",
"nixpkgs"
],
"systems": "systems_2"
},
"locked": {
"lastModified": 1707830867,
"narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=",
"owner": "ryantm",
"repo": "agenix",
"rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6",
"type": "github"
},
"original": {
"owner": "ryantm",
"repo": "agenix",
"type": "github"
}
},
"brew-src": {
"flake": false,
"locked": {
"lastModified": 1718075954,
"narHash": "sha256-4TeUhv5VLEufP+Z/NkKnUk4NUaf59cMsj6NvsVbE+8w=",
"owner": "Homebrew",
"repo": "brew",
"rev": "3f08c75e7b950d4340dab462f3e7f77e8093fa2b",
"type": "github"
},
"original": {
"owner": "Homebrew",
"ref": "4.3.5",
"repo": "brew",
"type": "github"
}
},
"darwin": {
"inputs": {
"nixpkgs": [
"railbird-secrets",
"agenix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1700795494,
"narHash": "sha256-gzGLZSiOhf155FW7262kdHo2YDeugp3VuIFb4/GGng0=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "4b9b83d5a92e8c1fbfd8eb27eda375908c11ec4d",
"type": "github"
},
"original": {
"owner": "lnl7",
"ref": "master",
"repo": "nix-darwin",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1709126324,
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1723399884,
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"railbird-secrets",
"agenix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1703113217,
"narHash": "sha256-7ulcXOk63TIT2lVDSExj7XzFx09LpdSAPtvgtM7yQPE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "3bfaacf46133c037bb356193bd2f1765d9dc82c1",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"homebrew-cask": {
"flake": false,
"locked": {
"lastModified": 1722820732,
"narHash": "sha256-Y8TBYxYeUVvgYFylqBUtWxFuOZVstXW+yylI2wz2eQ0=",
"owner": "homebrew",
"repo": "homebrew-cask",
"rev": "9e3db5dd3130f9bf388409f39ce1706ca7b59efe",
"type": "github"
},
"original": {
"owner": "homebrew",
"repo": "homebrew-cask",
"type": "github"
}
},
"homebrew-core": {
"flake": false,
"locked": {
"lastModified": 1722823168,
"narHash": "sha256-3sKYVUrhuS1fZJkrYAtB+O67dvaKyTvXXI9UqjAgI8A=",
"owner": "homebrew",
"repo": "homebrew-core",
"rev": "dd20841f7fe7375738708bc2f458152906a71f1d",
"type": "github"
},
"original": {
"owner": "homebrew",
"repo": "homebrew-core",
"type": "github"
}
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1722609272,
"narHash": "sha256-Kkb+ULEHVmk07AX+OhwyofFxBDpw+2WvsXguUS2m6e4=",
"owner": "LnL7",
"repo": "nix-darwin",
"rev": "f7142b8024d6b70c66fd646e1d099d3aa5bfec49",
"type": "github"
},
"original": {
"owner": "LnL7",
"repo": "nix-darwin",
"type": "github"
}
},
"nix-darwin_2": {
"inputs": {
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1716329735,
"narHash": "sha256-ap51w+VqG21vuzyQ04WrhI2YbWHd3UGz0e7dc/QQmoA=",
"owner": "LnL7",
"repo": "nix-darwin",
"rev": "eac4f25028c1975a939c8f8fba95c12f8a25e01c",
"type": "github"
},
"original": {
"owner": "LnL7",
"repo": "nix-darwin",
"type": "github"
}
},
"nix-homebrew": {
"inputs": {
"brew-src": "brew-src",
"flake-utils": "flake-utils",
"nix-darwin": "nix-darwin_2",
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1719720211,
"narHash": "sha256-FNK5ZxmNC+V/wOuioc5HqkUy0ld4eW3NqcsZHLYg9HI=",
"owner": "zhaofengli-wip",
"repo": "nix-homebrew",
"rev": "0afc51fd86693c73e4b60be8ed8c782c4c09b4cc",
"type": "github"
},
"original": {
"owner": "zhaofengli-wip",
"repo": "nix-homebrew",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1687274257,
"narHash": "sha256-TutzPriQcZ8FghDhEolnHcYU2oHIG5XWF+/SUBNnAOE=",
"path": "/nix/store/22qgs3skscd9bmrxv9xv4q5d4wwm5ppx-source",
"rev": "2c9ecd1f0400076a4d6b2193ad468ff0a7e7fdc5",
"type": "path"
},
"original": {
"id": "nixpkgs",
"type": "indirect"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1716330097,
"narHash": "sha256-8BO3B7e3BiyIDsaKA0tY8O88rClYRTjvAp66y+VBUeU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "5710852ba686cc1fd0d3b8e22b3117d43ba374c2",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_3": {
"locked": {
"lastModified": 1722640603,
"narHash": "sha256-TcXjLVNd3VeH1qKPH335Tc4RbFDbZQX+d7rqnDUoRaY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "81610abc161d4021b29199aa464d6a1a521e0cc9",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_4": {
"locked": {
"lastModified": 1709703039,
"narHash": "sha256-6hqgQ8OK6gsMu1VtcGKBxKQInRLHtzulDo9Z5jxHEFY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9df3e30ce24fd28c7b3e2de0d986769db5d6225d",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"railbird-secrets": {
"inputs": {
"agenix": "agenix",
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_4"
},
"locked": {
"lastModified": 1722639965,
"narHash": "sha256-ZRe5Z5s/UNaXI2piyncQ3YrFl5q3GryZAfFTyeJ/vhM=",
"ref": "refs/heads/master",
"rev": "9a92b83c3ad376620db3556c33e51a4300c5badd",
"revCount": 73,
"type": "git",
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
},
"original": {
"type": "git",
"url": "ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git"
}
},
"root": {
"inputs": {
"home-manager": "home-manager",
"homebrew-cask": "homebrew-cask",
"homebrew-core": "homebrew-core",
"nix-darwin": "nix-darwin",
"nix-homebrew": "nix-homebrew",
"nixpkgs": "nixpkgs_3",
"railbird-secrets": "railbird-secrets"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",
"version": 7
}

View File

@ -1,208 +0,0 @@
{
description = "Example Darwin system flake";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
nix-darwin.url = "github:LnL7/nix-darwin";
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
railbird-secrets = {
url = "git+ssh://gitea@dev.railbird.ai:1123/railbird/secrets-flake.git";
};
nix-homebrew.url = "github:zhaofengli-wip/nix-homebrew";
# Optional: Declarative tap management
homebrew-core = {
url = "github:homebrew/homebrew-core";
flake = false;
};
homebrew-cask = {
url = "github:homebrew/homebrew-cask";
flake = false;
};
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = inputs@{ self, nix-darwin, nixpkgs, home-manager, ... }:
let
libDir = ../dotfiles/lib;
configuration = { pkgs, config, ... }: {
networking.hostName = "mac-demarco-mini";
imports = [ (import ./gitea-actions-runner.nix) ];
services.gitea-actions-runner = {
user = "gitea-runner";
instances.nix = {
enable = true;
name = config.networking.hostName;
url = "https://dev.railbird.ai";
token = "H0A7YXAWsKSp9QzvMymfJI12hbxwR7UerEHpCJUe";
labels = [
"nix-darwin-${pkgs.system}:host"
"macos-aarch64-darwin"
"nix:host"
];
settings = {
cache = {
enabled = true;
};
host = {
workdir_parent = "/var/lib/gitea-runner/action-cache-dir";
};
};
hostPackages = with pkgs; [
bash
coreutils
curl
direnv
gawk
just
git-lfs
isort
gitFull
gnused
ncdu
nixFlakes
nodejs
openssh
wget
];
};
};
launchd.daemons.gitea-runner-nix.serviceConfig.EnvironmentVariables = {
XDG_CONFIG_HOME = "/var/lib/gitea-runner";
XDG_CACHE_HOME = "/var/lib/gitea-runner/.cache";
XDG_RUNTIME_DIR = "/var/lib/gitea-runner/tmp";
};
# launchd.daemons.gitea-runner-restarter = {
# serviceConfig = {
# ProgramArguments = [
# "/usr/bin/env"
# "bash"
# "-c"
# ''
# SERVICE_NAME="org.nixos.gitea-runner-nix"
# while true; do
# # Check the second column of launchctl list output for our service
# EXIT_CODE=$(sudo launchctl list | grep "$SERVICE_NAME" | awk '{print $2}')
# if [ -z "$EXIT_CODE" ]; then
# echo "$(date): $SERVICE_NAME is running correctly. Terminating the restarter."
# exit 0
# else
# echo "$(date): $SERVICE_NAME is not running or in error state. Attempting to restart..."
# sudo launchctl bootout system/$SERVICE_NAME 2>/dev/null || true
# sudo launchctl load /Library/LaunchDaemons/$SERVICE_NAME.plist
# sleep 2 # Give the service some time to start
# fi
# done
# ''
# ];
# RunAtLoad = true;
# ThrottleInterval = 300;
# };
# };
launchd.daemons.does-anything-work = {
serviceConfig = {
ProgramArguments = ["/usr/bin/env" "bash" "-c" "date > /var/log/does-anything-work"];
RunAtLoad = true;
};
};
nixpkgs.overlays = [(import ../nixos/overlay.nix)];
environment.systemPackages = with pkgs; [
python-with-my-packages
emacs
alejandra
cocoapods
gitFull
just
tmux
htop
nodePackages.prettier
nodejs
ripgrep
slack
typescript
vim
yarn
];
nixpkgs.config.allowUnfree = true;
# Auto upgrade nix package and the daemon service.
services.nix-daemon.enable = true;
launchd.user.envVariables.PATH = config.environment.systemPath;
programs.direnv.enable = true;
# Necessary for using flakes on this system.
nix.settings.experimental-features = "nix-command flakes";
# Set Git commit hash for darwin-version.
system.configurationRevision = self.rev or self.dirtyRev or null;
# Used for backwards compatibility, please read the changelog before changing
system.stateVersion = 4;
# The platform the configuration will be used on.
nixpkgs.hostPlatform = "aarch64-darwin";
users.users.kat.openssh.authorizedKeys.keys = inputs.railbird-secrets.keys.kanivanKeys;
users.users.gitea-runner = {
name = "gitea-runner";
isHidden = false;
home = "/Users/gitea-runner";
createHome = false;
};
home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true;
users.users.kat = {
name = "kat";
home = "/Users/kat";
};
programs.zsh = {
enable = true;
shellInit = ''
fpath+="${libDir}/functions"
for file in "${libDir}/functions/"*
do
autoload "''${file##*/}"
done
'';
interactiveShellInit = ''
# eval "$(register-python-argcomplete prb)"
# eval "$(register-python-argcomplete prod-prb)"
# eval "$(register-python-argcomplete railbird)"
# [ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
autoload -Uz bracketed-paste-magic
zle -N bracketed-paste bracketed-paste-magic
'';
};
home-manager.users.kat = {
programs.starship = {
enable = true;
};
programs.zsh.enable = true;
home.stateVersion = "24.05";
};
};
in
{
darwinConfigurations."mac-demarco-mini" = nix-darwin.lib.darwinSystem {
modules = [
home-manager.darwinModules.home-manager
configuration
];
};
# Expose the package set, including overlays, for convenience.
darwinPackages = self.darwinConfigurations."Kats-Mac-mini".pkgs;
};
}

View File

@ -1,176 +0,0 @@
{
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.services.gitea-actions-runner;
settingsFormat = pkgs.formats.yaml {};
hasDockerScheme = instance:
instance.labels == [] || any (label: hasInfix ":docker:" label) instance.labels;
wantsContainerRuntime = any hasDockerScheme (attrValues cfg.instances);
hasHostScheme = instance: any (label: hasSuffix ":host" label) instance.labels;
tokenXorTokenFile = instance:
(instance.token == null && instance.tokenFile != null)
|| (instance.token != null && instance.tokenFile == null);
in {
options.services.gitea-actions-runner = {
package = mkOption {
type = types.package;
default = pkgs.gitea-actions-runner;
defaultText = literalExpression "pkgs.gitea-actions-runner";
description = "The gitea-actions-runner package to use.";
};
user = mkOption {
type = types.str;
default = "gitea-runner";
description = "The user account under which the Gitea Actions Runner should run.";
};
instances = mkOption {
default = {};
description = "Gitea Actions Runner instances.";
type = types.attrsOf (types.submodule {
options = {
enable = mkEnableOption "Gitea Actions Runner instance";
name = mkOption {
type = types.str;
example = "my-runner";
description = "The name identifying the runner instance towards the Gitea/Forgejo instance.";
};
url = mkOption {
type = types.str;
example = "https://forge.example.com";
description = "Base URL of your Gitea/Forgejo instance.";
};
token = mkOption {
type = types.nullOr types.str;
default = null;
description = "Plain token to register at the configured Gitea/Forgejo instance.";
};
tokenFile = mkOption {
type = types.nullOr (types.either types.str types.path);
default = null;
description = "Path to a file containing the token to register at the configured Gitea/Forgejo instance.";
};
labels = mkOption {
type = types.listOf types.str;
default = [];
example = ["macos:host" "x86_64:host"];
description = "Labels used to map jobs to their runtime environment.";
};
settings = mkOption {
description = "Configuration for `act_runner daemon`.";
type = types.submodule {
freeformType = settingsFormat.type;
};
default = {};
};
hostPackages = mkOption {
type = types.listOf types.package;
default = with pkgs; [
bash
coreutils
curl
gawk
git
gnused
nodejs
wget
openssh
];
description = "List of packages available to actions when the runner is configured with a host execution label.";
};
};
});
};
};
config = mkIf (cfg.instances != {}) {
assertions = [
{
assertion = all tokenXorTokenFile (attrValues cfg.instances);
message = "Instances of gitea-actions-runner can have `token` or `tokenFile`, not both.";
}
];
users.users.${cfg.user} = {
name = cfg.user;
description = "Gitea Actions Runner user";
};
launchd.daemons =
(mapAttrs' (
name: instance:
nameValuePair "gitea-runner-${name}" {
serviceConfig = {
ProgramArguments = [
"/usr/bin/env"
"bash"
"-c"
''
cd /var/lib/gitea-runner/${name}
exec ${cfg.package}/bin/act_runner daemon --config ${settingsFormat.generate "config.yaml" instance.settings}
''
];
KeepAlive = true;
ThrottleInterval = 5;
SessionCreate = true;
UserName = cfg.user;
GroupName = "staff";
WorkingDirectory = "/var/lib/gitea-runner/${name}";
EnvironmentVariables = {
PATH = (lib.makeBinPath (instance.hostPackages ++ [cfg.package])) + ":/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin";
};
};
}
)
cfg.instances)
// (mapAttrs' (
name: instance:
nameValuePair "gitea-runner-setup-${name}"
{
serviceConfig = {
EnvironmentVariables =
{}
// optionalAttrs (instance.token != null) {
TOKEN = instance.token;
};
RunAtLoad = true;
ProgramArguments = [
"${pkgs.writeShellScript "gitea-runner-setup-${name}" ''
mkdir -p /var/lib/gitea-runner/${name}
cd /var/lib/gitea-runner/${name}
if [ ! -e "/var/lib/gitea-runner/${name}/.runner" ]; then
${cfg.package}/bin/act_runner register --no-interactive \
--instance ${escapeShellArg instance.url} \
--token "$TOKEN" \
--name ${escapeShellArg instance.name} \
--labels ${escapeShellArg (concatStringsSep "," instance.labels)} \
--config ${settingsFormat.generate "config.yaml" instance.settings}
fi
# Start the runner
chown -R ${cfg.user} /var/lib/gitea-runner
chown -R ${cfg.user} /var/log/gitea-runner
''}"
];
};
}
)
cfg.instances);
};
}

View File

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

View File

@ -1,12 +1,10 @@
{ config, pkgs, forEachUser, makeEnable, realUsers, ... }: { config, pkgs, options, inputs, makeEnable, ... }:
makeEnable config "myModules.base" true { makeEnable config "modules.base" true {
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [
"openssl-1.0.2u" "openssl-1.0.2u"
"electron-12.2.3" "electron-12.2.3"
"etcher" "etcher"
"electron-19.1.9" "electron-19.1.9"
"openssl-1.1.1w"
"nix-2.16.2"
]; ];
# Disabling these waits disables the stuck on boot up issue # Disabling these waits disables the stuck on boot up issue
@ -20,6 +18,7 @@ makeEnable config "myModules.base" true {
enable = true; enable = true;
enableSSHSupport = true; enableSSHSupport = true;
}; };
package = pkgs.gnupg_2_4_0;
}; };
services.pcscd.enable = true; services.pcscd.enable = true;
@ -33,10 +32,15 @@ makeEnable config "myModules.base" true {
enable = true; enable = true;
enableStrongSwan = true; enableStrongSwan = true;
plugins = [ pkgs.networkmanager-l2tp pkgs.networkmanager-openvpn ]; plugins = [ pkgs.networkmanager-l2tp pkgs.networkmanager-openvpn ];
extraConfig = ''
[main]
rc-manager=resolvconf
'';
}; };
# Audio # Audio
hardware.pulseaudio.enable = false; sound.enable = true;
hardware.pulseaudio.enable = true;
# Bluetooth # Bluetooth
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;
@ -68,7 +72,4 @@ makeEnable config "myModules.base" true {
services.dbus.packages = [ pkgs.gcr ]; services.dbus.packages = [ pkgs.gcr ];
programs.dconf.enable = true; programs.dconf.enable = true;
home-manager.users = forEachUser (import ./home-manager.nix);
nix.settings.trusted-users = realUsers ++ ["gitea-runner"];
} }

View File

@ -1,18 +0,0 @@
{ pkgs, inputs, config, makeEnable, ... }:
makeEnable config "myModules.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" "ben"]; realUsers = [ "root" "imalison" "kat" "dean" "alex" ];
forEachUser = mapValueToKeys realUsers; forEachUser = mapValueToKeys realUsers;
} // specialArgs // (import ../keys.nix); } // specialArgs // (import ../keys.nix);
}); });

View File

@ -1,14 +1,14 @@
{ config, lib, ... }: { config, makeEnable, lib, ... }:
with lib; with lib;
let cfg = config.myModules.cache-server; let cfg = config.modules.cache-server;
in in
{ {
options = { options = {
myModules.cache-server = { modules.cache-server = {
enable = mkEnableOption "nix cache server"; enable = mkEnableOption "nix cache server";
port = mkOption { port = mkOption {
type = types.int; type = types.int;
default = 5050; default = 8080;
}; };
host-string = mkOption { host-string = mkOption {
type = types.string; type = types.string;
@ -27,7 +27,18 @@ in
services.nix-serve = { services.nix-serve = {
enable = true; enable = true;
secretKeyFile = config.age.secrets."cache-priv-key.pem".path; secretKeyFile = config.age.secrets."cache-priv-key.pem".path;
port = cfg.port; port = 5050;
};
services.nginx = {
enable = true;
recommendedProxySettings = true;
virtualHosts = {
"${cfg.host-string}" = {
locations."${cfg.path}".proxyPass = "http://${config.services.nix-serve.bindAddress}:${toString config.services.nix-serve.port}";
listen = [ { addr = "0.0.0.0"; port = cfg.port; } ];
};
};
}; };
}; };
} }

View File

@ -1,5 +1,5 @@
{ pkgs, config, makeEnable, ... }: { pkgs, config, makeEnable, ... }:
makeEnable config "myModules.code" true { makeEnable config "modules.code" true {
programs.direnv = { programs.direnv = {
enable = true; enable = true;
nix-direnv.enable = true; nix-direnv.enable = true;
@ -57,7 +57,6 @@ makeEnable config "myModules.code" true {
# nix # nix
nixd nixd
nil nil
alejandra
] ++ (if pkgs.system == "x86_64-linux" then with pkgs; [ ] ++ (if pkgs.system == "x86_64-linux" then with pkgs; [
# purescript # purescript
purescript purescript

View File

@ -1,41 +1,30 @@
{ config, lib, forEachUser, ... }: { config, lib, ... }:
{ {
imports = [ imports = [
./android.nix ./android.nix
./base.nix ./base.nix
./ben.nix
./cache-server.nix
./cache.nix ./cache.nix
./cache-server.nix
./code.nix ./code.nix
./desktop.nix ./desktop.nix
./electron.nix
./environment.nix ./environment.nix
./essential.nix ./essential.nix
./extra.nix ./extra.nix
./games.nix ./games.nix
./git-sync.nix ./git-sync.nix
./gitea-runner.nix
./gitea.nix ./gitea.nix
./gnome.nix ./gitea-runner.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
./postgres.nix
./rabbitmq.nix
./secrets.nix ./secrets.nix
./ssh.nix ./ssh.nix
./syncthing.nix ./syncthing.nix
./user-specific.nix
./users.nix ./users.nix
./vscode.nix
./wsl.nix ./wsl.nix
./xmonad.nix ./xmonad.nix
]; ];
@ -45,17 +34,14 @@
}; };
config = lib.mkIf config.features.full.enable { config = lib.mkIf config.features.full.enable {
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.plasma.enable = true; modules.xmonad.enable = true;
myModules.gnome.enable = false; modules.extra.enable = true;
myModules.xmonad.enable = true; modules.code.enable = true;
myModules.extra.enable = true; modules.games.enable = true;
myModules.electron.enable = true; modules.syncthing.enable = true;
myModules.code.enable = true; modules.fonts.enable = true;
myModules.games.enable = true; modules.nixified-ai.enable = true;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
}; };
} }

View File

@ -1,5 +1,5 @@
{ config, pkgs, makeEnable, ... }: { config, pkgs, options, inputs, makeEnable, forEachUser, ... }:
makeEnable config "myModules.desktop" true { makeEnable config "modules.desktop" true {
imports = [ imports = [
./fonts.nix ./fonts.nix
]; ];
@ -7,10 +7,14 @@ makeEnable config "myModules.desktop" true {
services.xserver = { services.xserver = {
exportConfiguration = true; exportConfiguration = true;
enable = true; enable = true;
xkb = {
layout = "us"; layout = "us";
desktopManager = {
plasma5.enable = true;
}; };
displayManager = { displayManager = {
sddm = {
enable = true;
};
sessionCommands = '' sessionCommands = ''
systemctl --user import-environment GDK_PIXBUF_MODULE_FILE DBUS_SESSION_BUS_ADDRESS PATH systemctl --user import-environment GDK_PIXBUF_MODULE_FILE DBUS_SESSION_BUS_ADDRESS PATH
''; '';
@ -34,10 +38,10 @@ makeEnable config "myModules.desktop" true {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# Appearance # Appearance
adwaita-icon-theme gnome.adwaita-icon-theme
hicolor-icon-theme hicolor-icon-theme
libsForQt5.breeze-gtk libsForQt5.breeze-gtk
# materia-theme materia-theme
numix-icon-theme-circle numix-icon-theme-circle
papirus-icon-theme papirus-icon-theme
@ -55,23 +59,27 @@ makeEnable config "myModules.desktop" true {
alacritty alacritty
blueman blueman
clipit clipit
d-spy dfeet
dolphin dolphin
element-desktop
feh feh
firefox firefox
cheese gnome.cheese
gpaste gnome.gpaste
kleopatra kleopatra
libnotify libnotify
# Seems to be broken
libreoffice libreoffice
lxappearance lxappearance
lxqt.lxqt-powermanagement lxqt.lxqt-powermanagement
networkmanagerapplet networkmanagerapplet
notify-osd-customizable notify-osd-customizable
okular okular
picom
pinentry pinentry
mission-center psensor
quassel quassel
remmina remmina
rofi rofi
@ -81,7 +89,7 @@ makeEnable config "myModules.desktop" true {
simplescreenrecorder simplescreenrecorder
skippy-xd skippy-xd
synergy synergy
transmission_3-gtk transmission-gtk
vlc vlc
volnoti volnoti
xfce.thunar xfce.thunar
@ -96,13 +104,35 @@ makeEnable config "myModules.desktop" true {
graphviz graphviz
nodePackages.mermaid-cli nodePackages.mermaid-cli
] ++ (if pkgs.system == "x86_64-linux" then with pkgs; [ ] ++ (if pkgs.system == "x86_64-linux" then with pkgs; [
bitwarden
discord
etcher
google-chrome google-chrome
keybase-gui
pommed_light pommed_light
slack slack
spicetify-cli spicetify-cli
spotify spotify
tor-browser-bundle-bin tor-browser-bundle-bin
vscode vscode
zulip zoom-us
] else []); ] else []);
home-manager.users = forEachUser (if pkgs.system == "x86_64-linux" then {
systemd.user.services.bitwarden = {
Unit = {
Description = "Bitwarden";
After = [ "graphical-session-pre.target" "tray.target" ];
PartOf = [ "graphical-session.target" ];
};
Install = { WantedBy = [ "graphical-session.target" ]; };
Service = {
ExecStart = "${pkgs.bitwarden}/bin/bitwarden";
Restart = "always";
RestartSec = 3;
};
};
} else {});
} }

View File

@ -1,28 +0,0 @@
{ pkgs, config, makeEnable, forEachUser, ... }:
makeEnable config "myModules.electron" false {
environment.systemPackages = with pkgs; [
element-desktop
# bitwarden
discord
# etcher
# keybase-gui
zoom-us
];
home-manager.users = forEachUser (if pkgs.system == "x86_64-linux" then {
# systemd.user.services.bitwarden = {
# Unit = {
# Description = "Bitwarden";
# After = [ "graphical-session-pre.target" "tray.target" ];
# PartOf = [ "graphical-session.target" ];
# };
# Install = { WantedBy = [ "graphical-session.target" ]; };
# Service = {
# ExecStart = "${pkgs.bitwarden}/bin/bitwarden";
# Restart = "always";
# RestartSec = 3;
# };
# };
} else {});
}

View File

@ -27,26 +27,6 @@ with lib;
do do
autoload "''${file##*/}" autoload "''${file##*/}"
done done
fpath+="${pkgs.python-with-my-packages}/lib/python3.11/site-packages/argcomplete/bash_completion.d"
'';
interactiveShellInit = ''
eval "$(register-python-argcomplete prb)"
eval "$(register-python-argcomplete prod-prb)"
eval "$(register-python-argcomplete railbird)"
[ -n "$EAT_SHELL_INTEGRATION_DIR" ] && source "$EAT_SHELL_INTEGRATION_DIR/zsh"
# 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"
''; '';
}; };
@ -67,7 +47,6 @@ with lib;
localBinInPath = true; localBinInPath = true;
shellAliases = { shellAliases = {
df_ssh = "TERM='xterm-256color ssh -o StrictHostKeyChecking=no'"; df_ssh = "TERM='xterm-256color ssh -o StrictHostKeyChecking=no'";
fix_nix = "LD_LIBRARY_PATH='' nix";
}; };
variables = { variables = {
ROFI_SYSTEMD_TERM = "alacritty -e"; ROFI_SYSTEMD_TERM = "alacritty -e";

View File

@ -1,11 +1,25 @@
{ pkgs, ... }: { pkgs, ... }:
let
my-python-packages = python-packages: with python-packages; [
appdirs
ipdb
ipython
numpy
openpyxl
pip
requests
tox
virtualenv
virtualenvwrapper
];
python-with-my-packages = pkgs.python311.withPackages my-python-packages;
in
{ {
nixpkgs.config.allowBroken = true; nixpkgs.config.allowBroken = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
automake automake
bazel bazel
bento4
bind bind
binutils binutils
cachix cachix
@ -16,12 +30,10 @@
efibootmgr efibootmgr
emacs emacs
fd fd
ffmpeg
file file
gawk gawk
gcc gcc
gdb gdb
git-fame
git-lfs git-lfs
git-sync git-sync
gitFull gitFull
@ -34,15 +46,12 @@
iotop iotop
ispell ispell
jq jq
just
lshw lshw
lsof lsof
magic-wormhole-rs magic-wormhole-rs
ncdu ncdu
neofetch neofetch
neovim
nix-index nix-index
nix-search-cli
pass pass
patchelf patchelf
pciutils pciutils
@ -52,9 +61,8 @@
rcm rcm
ripgrep ripgrep
silver-searcher silver-searcher
skim
sshfs
sysz sysz
sshfs
tmux tmux
tzupdate tzupdate
udiskie udiskie

View File

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

View File

@ -0,0 +1,6 @@
#!/usr/bin/env sh
nix flake lock --update-input taffybar
nix flake lock --update-input imalison-taffybar
nix flake lock --update-input xmonad
nix flake lock --update-input xmonad-contrib

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,6 @@
{ {
inputs = { inputs = {
nixtheplanet.url = "github:matthewcroughan/nixtheplanet"; nixos-hardware = { url = "github:NixOS/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";
@ -26,7 +22,7 @@
}; };
xmonad = { xmonad = {
url = "github:xmonad/xmonad"; url = "path:../dotfiles/config/xmonad/xmonad";
inputs = { inputs = {
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
flake-utils.follows = "flake-utils"; flake-utils.follows = "flake-utils";
@ -35,7 +31,7 @@
}; };
taffybar = { taffybar = {
url = "github:taffybar/taffybar/old-master"; url = "path:../dotfiles/config/taffybar/taffybar";
inputs = { inputs = {
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
flake-utils.follows = "flake-utils"; flake-utils.follows = "flake-utils";
@ -63,6 +59,10 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
nix = {
url = "github:IvanMalison/nix/my2.15.1";
};
flake-utils = { flake-utils = {
url = "github:numtide/flake-utils"; url = "github:numtide/flake-utils";
inputs.systems.follows = "systems"; inputs.systems.follows = "systems";
@ -103,7 +103,7 @@
}; };
}; };
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"; };
@ -113,7 +113,7 @@
}; };
outputs = inputs@{ outputs = inputs@{
self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad, nixtheplanet, self, nixpkgs, nixos-hardware, home-manager, taffybar, xmonad,
xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ... xmonad-contrib, notifications-tray-icon, nix, agenix, imalison-taffybar, ...
}: }:
let let
@ -125,7 +125,7 @@
name = machineNameFromFilename filename; name = machineNameFromFilename filename;
value = { value = {
modules = [ modules = [
(machinesFilepath + ("/" + filename)) agenix.nixosModules.default nixtheplanet.nixosModules.macos-ventura (machinesFilepath + ("/" + filename)) agenix.nixosModules.default
]; ];
}; };
}; };
@ -153,17 +153,10 @@
specialArgs = rec { specialArgs = rec {
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);
realUsers = [ "root" "imalison" "kat" "dean" "alex" ];
forEachUser = mapValueToKeys realUsers;
keys = (import ./keys.nix); keys = (import ./keys.nix);
usersInfo = (import ./users.nix) {
pkgs = { zsh = "zsh"; };
inherit keys inputs system;
};
realUsers = (builtins.attrNames
(nixpkgs.lib.filterAttrs
(_: value: (builtins.elem "isNormalUser" (builtins.attrNames value)) && value.isNormalUser) usersInfo.users.users)
);
mapAllKeysToValue = keys: value: builtins.listToAttrs (map (name: { inherit name value; }) keys);
forEachUser = mapAllKeysToValue realUsers;
} // specialArgs; } // specialArgs;
}); });
in in
@ -176,6 +169,7 @@
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
]; ];
extra-substituters = [ extra-substituters = [
"http://1896Folsom.duckdns.org"
"http://192.168.1.26:5050" "http://192.168.1.26:5050"
]; ];
extra-trusted-public-keys = [ extra-trusted-public-keys = [

View File

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

View File

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

View File

@ -1,7 +1,7 @@
{ pkgs, config, makeEnable, ... }: { pkgs, config, makeEnable, ... }:
makeEnable config "myModules.gitea-runner" false { makeEnable config "modules.gitea-runner" false {
age.secrets.gitea-runner-token = { age.secrets.gitea-runner-token = {
file = ./secrets/gitea-runner-token.age; file = ./secrets/gitea-runner-token.${config.networking.hostName}.age;
group = "docker"; group = "docker";
}; };
@ -21,7 +21,6 @@ makeEnable config "myModules.gitea-runner" false {
}; };
hostPackages = with pkgs; [ hostPackages = with pkgs; [
bash bash
direnv
coreutils coreutils
curl curl
gawk gawk
@ -30,8 +29,6 @@ makeEnable config "myModules.gitea-runner" false {
gitFull gitFull
gnused gnused
nodejs nodejs
docker
openssh
wget wget
]; ];
enable = true; enable = true;
@ -49,11 +46,4 @@ makeEnable config "myModules.gitea-runner" false {
XDG_CONFIG_HOME = gitea-runner-directory; XDG_CONFIG_HOME = gitea-runner-directory;
XDG_CACHE_HOME = "${gitea-runner-directory}/.cache"; XDG_CACHE_HOME = "${gitea-runner-directory}/.cache";
}; };
users.groups.gitea-runner = {};
users.users.gitea-runner = {
isSystemUser = true;
group = "gitea-runner";
extraGroups = ["docker"];
home = "/var/lib/gitea-runner";
};
} }

View File

@ -1,19 +1,14 @@
{ config, makeEnable, ... }: { config, makeEnable, ... }:
makeEnable config "myModules.gitea" false { makeEnable config "modules.gitea" false {
services.gitea = { services.gitea = {
enable = true; enable = true;
lfs.enable = true; lfs.enable = true;
dump = {
enable = true;
interval = "23:05";
};
settings.server = { settings.server = {
DOMAIN = "dev.railbird.ai"; DOMAIN = "dev.railbird.ai";
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,7 +0,0 @@
{ config, makeEnable, ... }:
makeEnable config "myModules.gnome" false {
services.xserver = {
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
};
}

View File

@ -1,4 +1,4 @@
{ pkgs, ... }: { pkgs, config, specialArgs, ... }:
{ {
xsession = { xsession = {
enable = true; enable = true;
@ -14,11 +14,14 @@
forwardAgent = true; forwardAgent = true;
}; };
programs.gpg.package = pkgs.gnupg_2_4_0;
services.gpg-agent = { services.gpg-agent = {
enable = true; enable = true;
defaultCacheTtl = 8 * 60 * 60; defaultCacheTtl = 8 * 60 * 60;
maxCacheTtl = 8 * 60 * 60; maxCacheTtl = 8 * 60 * 60;
enableSshSupport = true; enableSshSupport = true;
pinentryFlavor = "qt";
extraConfig = '' extraConfig = ''
allow-emacs-pinentry allow-emacs-pinentry
allow-loopback-pinentry allow-loopback-pinentry

View File

@ -1,14 +0,0 @@
switch *args:
sudo nixos-rebuild switch --flake '.#' --impure {{args}}
fix-local-path-issue:
nix flake lock --update-input imalison-taffybar
expire-home-manager-generations:
#!/usr/bin/env bash
set -euxo pipefail
for user in $(awk -F':' '{ if ($3 >= 1000 && $7 !~ /nologin|false|sync|shutdown|halt/) print $1 }' /etc/passwd); do
echo $user
sudo su - $user -c 'home-manager expire-generations -1days'
done

View File

@ -1,96 +0,0 @@
{
pkgs,
config,
lib,
...
}:
with lib; let
cfg = config.myModules.railbird-k3s;
mount-path = "/var/lib/railbird/bucket";
bucket-name = "railbird-dev-videos";
in {
options = {
myModules.railbird-k3s = {
enable = mkEnableOption "railbird k3s";
serverAddr = mkOption {
type = lib.types.str;
default = "";
};
};
};
config = mkIf cfg.enable {
age.secrets."1896Folsom-k3s-token.age".file = ./secrets/1896Folsom-k3s-token.age;
age.secrets."k3s-registry.yaml.age".file = ./secrets/k3s-registry.yaml.age;
age.secrets.api-service-key = {
file = ./secrets/api_service_account_key.json.age;
owner = "railbird";
group = "users";
};
environment.etc."rancher/k3s/registries.yaml".source = config.age.secrets."k3s-registry.yaml.age".path;
services.dockerRegistry = {
enable = true;
listenAddress = "0.0.0.0";
port = 5279;
enableDelete = true;
enableGarbageCollect = true;
};
systemd.services.mount-railbird-bucket = {
after = ["agenix.service"];
description = "Mount railbird bucket";
serviceConfig = {
Type = "simple";
RemainAfterExit = true;
ExecStartPre = [
"-${pkgs.util-linux}/bin/umount -f ${mount-path}"
"${pkgs.coreutils}/bin/mkdir -p ${mount-path}"
"${pkgs.coreutils}/bin/chown railbird:users ${mount-path}"
"${pkgs.coreutils}/bin/chmod 0775 ${mount-path}"
];
ExecStart = "${pkgs.gcsfuse}/bin/gcsfuse --implicit-dirs --key-file ${config.age.secrets.api-service-key.path} ${bucket-name} ${mount-path}";
User = "root";
};
};
services.k3s = {
enable = true;
clusterInit = cfg.serverAddr == "";
serverAddr = cfg.serverAddr;
configPath = pkgs.writeTextFile {
name = "k3s-config.yaml";
text = ''
kubelet-arg:
- "eviction-hard=nodefs.available<2Gi"
- "eviction-soft=nodefs.available<5Gi"
- "eviction-soft-grace-period=nodefs.available=5m"
'';
};
tokenFile = config.age.secrets."1896Folsom-k3s-token.age".path;
extraFlags = [
"--tls-san ryzen-shine.local"
"--tls-san nixquick.local"
"--tls-san biskcomp.local"
"--tls-san jimi-hendnix.local"
"--tls-san dev.railbird.ai"
"--node-label nixos-nvidia-cdi=enabled"
];
containerdConfigTemplate = ''
{{ template "base" . }}
[plugins]
"io.containerd.grpc.v1.cri".enable_cdi = true
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia]
privileged_without_host_devices = false
runtime_engine = ""
runtime_root = ""
runtime_type = "io.containerd.runc.v2"
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.nvidia.options]
BinaryName = "/run/current-system/sw/bin/nvidia-container-runtime"
'';
gracefulNodeShutdown = {
enable = true;
};
};
};
}

View File

@ -1,11 +1,10 @@
{ pkgs, inputs, config, makeEnable, ... }: { pkgs, inputs, config, makeEnable, ... }:
makeEnable config "myModules.kat" false { makeEnable config "modules.kat" false {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
bitwarden bitwarden
obsidian obsidian
obs-studio obs-studio
ffmpeg ffmpeg
code-cursor
]; ];
environment.extraInit = '' environment.extraInit = ''

View File

@ -1,5 +1,4 @@
rec { rec {
giteaSecret = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHRNHlKPGVnOATsbnkPccyK+C15TWGKbBwqNKt0UcQ81 imalison@adele";
hostKeys = [ hostKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG3UqIYs/NY0okKuiIO+dU2OM7A8vv3b6//GedagvLoX ryzen-shine.local" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG3UqIYs/NY0okKuiIO+dU2OM7A8vv3b6//GedagvLoX ryzen-shine.local"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINFbM1sL/vlDhrqPV1OMIGi4dKG0tMKhWSXx95ccbfyM biskcomp.local" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINFbM1sL/vlDhrqPV1OMIGi4dKG0tMKhWSXx95ccbfyM biskcomp.local"
@ -22,12 +21,9 @@ rec {
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMCJ08qswd3OoApAIHQwojEUJ4sre89vSngbM3x5pBP2 imalison@jay-lenovo.local" # Kat's Lenovo Legion "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMCJ08qswd3OoApAIHQwojEUJ4sre89vSngbM3x5pBP2 imalison@jay-lenovo.local" # Kat's Lenovo Legion
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOVGIGnpkU7HNQ/zl/Ffi562M+laWY9/yIjB63BCMiTS kat@nixcomp.local" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOVGIGnpkU7HNQ/zl/Ffi562M+laWY9/yIjB63BCMiTS kat@nixcomp.local"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO3tlMePru6ZlSuf8yUii3N1dy3WwJnSQAt3EgETkctK kat@jay-lenovo.local" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO3tlMePru6ZlSuf8yUii3N1dy3WwJnSQAt3EgETkctK kat@jay-lenovo.local"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFrOYD3ReFc2+xFUylBFHREcm1lO7BRJGW5JrOoY3I8s ivanm@strixi-minaj"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINYy93265G59aA1ksckjqlfeHq0vpEpzC8BwqCrpeXdh kat@Kats-Mac-mini.local"
]; ];
deanKeys = [ deanKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICDvbEVL+y7eV4+mtxOuHwyomBBQ6uYMesctstua20+e deanwenstrand@deans-mbp-2.lan"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFeXvPyHIYBPtn6QJtOrjlBUsZjDonVRfmWqTTM2ITWx nixos@nixos"
]; ];
alexKeys = [ alexKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP2SQkJenAX67Ze99SKOVpKDD1XvAZnxQ8RLP0dL/Ej2 alexm@MALISONSERVER"
@ -38,24 +34,10 @@ rec {
andyKeys = [ andyKeys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqBnDZXcZIMtOTPxg4pJWyMyNp84kpU2uH88aCkrhMBY2TI4dqAXGY4h1DOyOEyQo9nTgyvdlv4M1Hlp5tzfbuapdTWtt36gb+FKpsTUy8dz45fhKJerUszNbVQ+SpZu4ZFN4Nv9eP3AHO+Mzjcvbf666VMDEzZWu2totd7jxyI9PdK78TD5AOi+kGTtbEgqMpJCcZmJlzJ9NJJ2ejhPCRwcfDrShHcfMeEwWL5MmnzT+WstkRwJAM0f9/ks77jWDnB1Eu55rQykU8zVZ1nz1GiXZcxUpm6B0IRhwn8NGH6nVzSLITtO5eJ7LPQR9XNUODpbrsVGNK6jgGql9gZpYp andy@nixos" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqBnDZXcZIMtOTPxg4pJWyMyNp84kpU2uH88aCkrhMBY2TI4dqAXGY4h1DOyOEyQo9nTgyvdlv4M1Hlp5tzfbuapdTWtt36gb+FKpsTUy8dz45fhKJerUszNbVQ+SpZu4ZFN4Nv9eP3AHO+Mzjcvbf666VMDEzZWu2totd7jxyI9PdK78TD5AOi+kGTtbEgqMpJCcZmJlzJ9NJJ2ejhPCRwcfDrShHcfMeEwWL5MmnzT+WstkRwJAM0f9/ks77jWDnB1Eu55rQykU8zVZ1nz1GiXZcxUpm6B0IRhwn8NGH6nVzSLITtO5eJ7LPQR9XNUODpbrsVGNK6jgGql9gZpYp andy@nixos"
]; ];
willKeys = [ willKeys = [];
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILgLjW6R+dTEmlUoPfE4GA8gRn93UlcSJqlJP1xw0KWl willgester@gmail.com"
];
loewyKeys = [ loewyKeys = [
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDROb8zcXAgqR3xNpStjt8kSL2Tnic+aWVlQRkmmLveay0RDPatHVKiWtscBoFYvL19xwpi692nZjyPAGQBLMquVx8rexHUFVbs6UVM41Y/QV0UZLSlVM7xNl3nL/dQoxT8OC2a9WJThNm41EjFzzKAuUaWqjm4+uEsC9felBIzndlA5/bIn6EUkMb2X8qmOOIOod1UeVZeK0fWMoDdKsHtQjiQrrP4nLjOmrTQ+BF2yUHwFbW6SCQiXT1Jzq4zymnI717ZraTK0nXzl8amLrGGrh36TrR7pv9hWLeNIMCARvOtABMdQmrT1dI4FxLK1uKM696uzfoaZDUn58G2VGrd loewy gitlab" "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDROb8zcXAgqR3xNpStjt8kSL2Tnic+aWVlQRkmmLveay0RDPatHVKiWtscBoFYvL19xwpi692nZjyPAGQBLMquVx8rexHUFVbs6UVM41Y/QV0UZLSlVM7xNl3nL/dQoxT8OC2a9WJThNm41EjFzzKAuUaWqjm4+uEsC9felBIzndlA5/bIn6EUkMb2X8qmOOIOod1UeVZeK0fWMoDdKsHtQjiQrrP4nLjOmrTQ+BF2yUHwFbW6SCQiXT1Jzq4zymnI717ZraTK0nXzl8amLrGGrh36TrR7pv9hWLeNIMCARvOtABMdQmrT1dI4FxLK1uKM696uzfoaZDUn58G2VGrd loewy gitlab"
]; ];
agenixKeys = hostKeys ++ kanivanKeys; agenixKeys = hostKeys ++ kanivanKeys;
allKeys = loewyKeys ++ mikeKeys ++ kanivanKeys ++ deanKeys ++ alexKeys ++ hostKeys; allKeys = loewyKeys ++ mikeKeys ++ kanivanKeys ++ deanKeys ++ alexKeys ++ hostKeys;
railbird-sf = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDozY/3Cd9npaYPCgIn/E7MjW9c7Zb5/wTO5Qi7yRU45 root@railbird-sf"
];
micahKeys = [
"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"
];
benKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAJ6lD0c+frh2vzQjvsrsmJpwM1ovaY59m5NNPml5G+E benjamin.j.corner@gmail.com"
];
interviewKeys = [
];
} }

View File

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

View File

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

View File

@ -3,33 +3,26 @@
{ {
imports = [ imports = [
../configuration.nix ../configuration.nix
inputs.nixos-hardware.nixosModules.dell-xps-17-9700-nvidia inputs.nixos-hardware.nixosModules.dell-xps-17-9700-intel
]; ];
myModules.base.enable = true; modules.base.enable = true;
myModules.desktop.enable = true; modules.desktop.enable = true;
myModules.xmonad.enable = true; modules.xmonad.enable = true;
myModules.extra.enable = false; modules.extra.enable = false;
myModules.code.enable = true; modules.code.enable = true;
myModules.games.enable = false; modules.games.enable = false;
myModules.syncthing.enable = true; modules.syncthing.enable = true;
myModules.fonts.enable = true; modules.fonts.enable = true;
myModules.nixified-ai.enable = false; modules.nixified-ai.enable = false;
myModules.gitea-runner.enable = false; modules.gitea-runner.enable = true;
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
environment.systemPackages = with pkgs; [
android-studio
];
boot.kernelPackages = pkgs.linuxPackages_latest; boot.kernelPackages = pkgs.linuxPackages_latest;
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
services.xserver = {
videoDrivers = [ "nvidia" ];
};
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;

View File

@ -1,39 +0,0 @@
{ lib, pkgs, config, inputs, forEachUser, ... }:
{
imports = [
../configuration.nix
];
services.xserver.enable = true;
environment.systemPackages = with pkgs; [
sublime
vlc
];
myModules.desktop.enable = false;
myModules.plasma.enable = false;
imalison.nixOverlay.enable = false;
myModules.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

@ -7,37 +7,25 @@ in
../raspberry-pi.nix ../raspberry-pi.nix
]; ];
users.users.nginx = { modules.raspberry-pi.enable = true;
group = "nginx";
isSystemUser = true;
extraGroups = ["syncthing"];
};
myModules.raspberry-pi.enable = true; modules.base.enable = true;
modules.desktop.enable = true;
myModules.base.enable = true; modules.xmonad.enable = false;
myModules.desktop.enable = true; modules.extra.enable = false;
myModules.xmonad.enable = false; modules.code.enable = true;
myModules.extra.enable = false; modules.games.enable = false;
myModules.code.enable = true; modules.syncthing.enable = true;
myModules.games.enable = false; modules.fonts.enable = true;
myModules.syncthing.enable = true; modules.nixified-ai.enable = false;
myModules.fonts.enable = true; modules.cache-server = {
myModules.nixified-ai.enable = false;
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";
}; };
myModules.gitea.enable = true; modules.gitea.enable = true;
myModules.gitea-runner.enable = false; modules.gitea-runner.enable = false;
myModules.railbird-k3s = {
enable = true;
serverAddr = "https://dev.railbird.ai:6443";
};
services.k3s.disableAgent = true;
services.vaultwarden = { services.vaultwarden = {
enable = true; enable = true;
@ -52,15 +40,6 @@ in
defaults.email = "IvanMalison@gmail.com"; defaults.email = "IvanMalison@gmail.com";
}; };
# services.nextcloud = {
# enable = true;
# hostName = "nextcloud.railbird.ai";
# config = {
# dbtype = "pgsql";
# database.createLocally = true;
# };
# };
services.nginx = { services.nginx = {
enable = true; enable = true;
recommendedProxySettings = true; recommendedProxySettings = true;
@ -74,33 +53,6 @@ in
proxyPass = "http://[::1]:8222"; proxyPass = "http://[::1]:8222";
}; };
}; };
"cache.railbird.ai" = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://192.168.1.20:3090";
};
};
"syncthing.railbird.ai" = {
enableACME = true;
forceSSL = true;
root = "/var/lib/syncthing/railbird";
locations."/" = {
extraConfig = ''
autoindex on;
'';
};
};
"docs.railbird.ai" = {
enableACME = true;
forceSSL = true;
root = "/var/lib/syncthing/railbird/docs";
locations."/" = {
extraConfig = ''
autoindex on;
'';
};
};
}; };
}; };
@ -114,7 +66,7 @@ in
}; };
services.home-assistant = { services.home-assistant = {
enable = false; enable = true;
extraComponents = [ extraComponents = [
# Components required to complete the onboarding # Components required to complete the onboarding
"met" "met"

View File

@ -1,21 +0,0 @@
{ lib, pkgs, config, inputs, forEachUser, ... }:
{
imports = [
../configuration.nix
];
services.xserver.enable = true;
environment.systemPackages = with pkgs; [sublime];
myModules.desktop.enable = false;
myModules.plasma.enable = false;
imalison.nixOverlay.enable = false;
myModules.wsl.enable = true;
networking.hostName = "dean-zephyrus";
wsl.defaultUser = "dean";
system.stateVersion = "22.05";
home-manager.users = forEachUser {
home.stateVersion = "22.05";
};
}

View File

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

View File

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

View File

@ -8,10 +8,8 @@
features.full.enable = true; features.full.enable = true;
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
android-studio
linuxPackages_latest.perf linuxPackages_latest.perf
zenmonitor zenmonitor
code-cursor
]; ];
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
@ -27,13 +25,13 @@
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
myModules.postgres.enable = true;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
services.xserver = { services.xserver = {
enable = true; enable = true;
libinput.enable = true; libinput.enable = true;
displayManager.sddm.enable = true;
desktopManager.plasma5.enable = true;
videoDrivers = [ "amdgpu" ]; videoDrivers = [ "amdgpu" ];
}; };

View File

@ -5,24 +5,22 @@
../configuration.nix ../configuration.nix
]; ];
myModules.railbird-k3s = { modules.base.enable = true;
enable = true; modules.desktop.enable = true;
serverAddr = "https://ryzen-shine.local:6443"; modules.xmonad.enable = true;
}; modules.extra.enable = false;
myModules.base.enable = true; modules.code.enable = true;
myModules.desktop.enable = true; modules.games.enable = false;
myModules.xmonad.enable = true; modules.syncthing.enable = true;
myModules.extra.enable = false; modules.fonts.enable = true;
myModules.code.enable = true; modules.nixified-ai.enable = false;
myModules.games.enable = false; modules.gitea-runner.enable = true;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.gitea-runner.enable = true;
myModules.postgres.enable = true;
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
myModules.nvidia.enable = true;
# install nvidia drivers in addition to intel one
hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "usbhid" "sd_mod" ]; boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "usbhid" "sd_mod" ];
boot.kernelModules = [ "kvm-intel" ]; boot.kernelModules = [ "kvm-intel" ];
@ -46,10 +44,6 @@
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = [
{ device = "/dev/disk/by-uuid/598e9aa1-4940-4410-a2fa-3dfd8b7d2c0d"; }
];
home-manager.users = forEachUser { home-manager.users = forEachUser {
home.stateVersion = "23.11"; home.stateVersion = "23.11";
}; };

View File

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

View File

@ -1,74 +0,0 @@
{ config, lib, pkgs, forEachUser, ... }:
{
imports = [
../configuration.nix
];
networking.hostName = "railbird-sf";
hardware.enableRedistributableFirmware = true;
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
boot.loader.systemd-boot.enable = true;
modules.postgres.enable = true;
services.k3s.role = "agent";
services.k3s.extraFlags = lib.mkForce ["--node-label nixos-nvidia-cdi=enabled"];
hardware.nvidia = {
powerManagement.enable = false;
# Fine-grained power management. Turns off GPU when not in use.
# Experimental and only works on modern Nvidia GPUs (Turing or newer).
powerManagement.finegrained = false;
# Enable the Nvidia settings menu,
# accessible via `nvidia-settings`.
nvidiaSettings = true;
};
features.full.enable = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = false;
myModules.code.enable = true;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.plasma.enable = true;
myModules.nvidia.enable = true;
myModules.gitea-runner.enable = true;
myModules.railbird-k3s = {
enable = false;
serverAddr = "https://dev.railbird.ai:6443";
};
fileSystems."/" =
{ device = "/dev/disk/by-uuid/a317d456-6f84-41ee-a149-8e466e414aae";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/B875-39D4";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/129345f3-e1e1-4d45-9db9-643160c6d564"; }
];
environment.systemPackages = with pkgs; [
android-studio
];
networking.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
home-manager.users = forEachUser {
home.stateVersion = "23.11";
};
system.stateVersion = "23.11";
}

View File

@ -6,17 +6,13 @@
]; ];
features.full.enable = true; features.full.enable = true;
myModules.kubelet.enable = false;
myModules.nvidia.enable = true;
# Needed for now because monitors have different refresh rates # Needed for now because monitors have different refresh rates
myModules.xmonad.picom.vSync.enable = false; modules.xmonad.picom.vSync.enable = false;
myModules.cache-server = { modules.cache-server = {
enable = true; enable = true;
port = 3090; port = 3090;
}; };
myModules.gitea-runner.enable = true; modules.gitea-runner.enable = true;
myModules.postgres.enable = true;
myModules.railbird-k3s.enable = true;
boot.loader.systemd-boot.configurationLimit = 5; boot.loader.systemd-boot.configurationLimit = 5;
@ -33,6 +29,29 @@
services.autorandr = { services.autorandr = {
enable = true; enable = true;
profiles = {
"1896Office" = {
fingerprint = {
DP-0 = "00ffffffffffff0010ace4a153364b300c200104b55123783bfce1b04d3bb8250e505421080001010101010101010101010101010101e77c70a0d0a029503020150829623100001a000000ff0023473749594d78677741413052000000fd0001afffff63010a202020202020000000fc0044656c6c20415733343233445702d8020320f12309070183010000654b04000101e305c000e2006ae6060501634b004ed470a0d0a046503020e50c29623100001a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009970127903000f000aa4140e0e07012045000002010d310cdb4dbd13b85b620e01455403013c520101046f0d9f002f801f009f0554004c000400663801046f0d9f002f801f009f0566005e0004008b8101046f0d9f002f801f009f057e007600040000000000000000000000000000000000000000000000000000000000005f90";
HDMI-0 = "00ffffffffffff0010ac67d0534d39312d1a0103803c2278ee4455a9554d9d260f5054a54b00b300d100714fa9408180778001010101565e00a0a0a029503020350055502100001a000000ff00483759434336423831394d530a000000fc0044454c4c205532373135480a20000000fd0038561e711e000a202020202020019e020322f14f1005040302071601141f1213202122230907078301000065030c001000023a801871382d40582c250055502100001e011d8018711c1620582c250055502100009e011d007251d01e206e28550055502100001e8c0ad08a20e02d10103e9600555021000018483f00ca808030401a50130055502100001e00000094";
};
config = {
DP-0 = {
enable = true;
mode = "3440x1440";
rate = "143.97";
position = "0x1440";
primary = true;
};
HDMI-0 = {
enable = true;
rate = "59.95";
mode = "2560x1440";
position = "440x0";
};
};
};
};
}; };
hardware.enableRedistributableFirmware = true; hardware.enableRedistributableFirmware = true;
@ -48,15 +67,15 @@
boot.initrd.kernelModules = [ "dm-snapshot" ]; boot.initrd.kernelModules = [ "dm-snapshot" ];
# install nvidia drivers in addition to intel one # install nvidia drivers in addition to intel one
hardware.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ]; hardware.opengl.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ]; hardware.opengl.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
services.xserver = { services.xserver = {
videoDrivers = [ "nvidia" ]; videoDrivers = [ "nvidia" ];
}; };
hardware.nvidia.modesetting.enable = true; hardware.nvidia.modesetting.enable = true;
hardware.graphics.enable32Bit = true; hardware.opengl.driSupport32Bit = true;
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
@ -77,7 +96,7 @@
options = [ "nofail" ]; options = [ "nofail" ];
}; };
swapDevices = [ swapDevices =[
{ device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; } { device = "/dev/disk/by-uuid/f719b44e-295a-4909-9a60-84f87acb7f77"; }
]; ];

View File

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

View File

@ -1,66 +0,0 @@
{ config, lib, pkgs, inputs, forEachUser, ... }:
{
imports = [
../configuration.nix
inputs.nixos-hardware.nixosModules.asus-rog-strix-g834jzr
];
hardware.nvidia.open = false;
myModules.base.enable = true;
myModules.desktop.enable = true;
myModules.xmonad.enable = true;
myModules.extra.enable = false;
myModules.code.enable = true;
myModules.games.enable = false;
myModules.syncthing.enable = true;
myModules.fonts.enable = true;
myModules.nixified-ai.enable = false;
myModules.gitea-runner.enable = false;
hardware.enableRedistributableFirmware = true;
environment.systemPackages = with pkgs; [
android-studio
];
services.xserver.dpi = 96;
boot.kernelPackages = pkgs.linuxPackages_testing;
boot.initrd.availableKernelModules = [ "vmd" "xhci_pci" "thunderbolt" "nvme" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
hardware.graphics = {
enable = true;
enable32Bit = true;
};
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
services.asusd.enable = true;
fileSystems."/" =
{ device = "/dev/disk/by-uuid/fc06a54c-cc45-423a-914b-8dfcb5939106";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/B28A-829A";
fsType = "vfat";
};
swapDevices =
[ { device = "/dev/disk/by-uuid/27f277a0-b552-43a0-904d-625e48922bb9"; }
];
networking.hostName = "strixi-minaj";
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
home-manager.users = forEachUser {
home.stateVersion = "23.05";
};
system.stateVersion = "23.05";
}

View File

@ -6,7 +6,7 @@
options = { options = {
imalison.nixOverlay.enable = lib.mkOption { imalison.nixOverlay.enable = lib.mkOption {
default = false; default = true;
type = lib.types.bool; type = lib.types.bool;
}; };
}; };
@ -18,7 +18,6 @@
}; };
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.backupFileExtension = "backup";
nix = rec { nix = rec {
extraOptions = '' extraOptions = ''
@ -28,20 +27,12 @@
settings = { settings = {
keep-outputs = true; keep-outputs = true;
keep-derivations = true; keep-derivations = true;
substituters = [
"https://cache.nixos.org"
"https://cuda-maintainers.cachix.org"
];
trusted-public-keys = [
"cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A="
"cuda-maintainers.cachix.org-1:0dq3bujKpuEPMCX6U4WylrUDZ9JyUG0VpVZa7CNfq5E="
];
nix-path = nixPath;
}; };
channel.enable = false; channel.enable = false;
nixPath = [ nixPath = [
"nixpkgs=${inputs.nixpkgs.outPath}" "nixpkgs=${inputs.nixpkgs.outPath}"
]; ];
settings.nix-path = nixPath;
}; };
nixpkgs.overlays = [ nixpkgs.overlays = [

View File

@ -1,5 +1,5 @@
{ inputs, config, specialArgs, ... }: { inputs, config, specialArgs, ... }:
specialArgs.makeEnable config "myModules.nixified-ai" false { specialArgs.makeEnable config "modules.nixified-ai" false {
imports = [ imports = [
inputs.nixified-ai.nixosModules.invokeai inputs.nixified-ai.nixosModules.invokeai
]; ];
@ -11,6 +11,7 @@ specialArgs.makeEnable config "myModules.nixified-ai" false {
services.invokeai = { services.invokeai = {
enable = false; enable = false;
host = "0.0.0.0"; host = "0.0.0.0";
nsfwChecker = false;
package = inputs.nixified-ai.packages.${config.nixpkgs.system}.invokeai-nvidia; package = inputs.nixified-ai.packages.${config.nixpkgs.system}.invokeai-nvidia;
}; };
} }

View File

@ -1,18 +0,0 @@
{ config, pkgs, makeEnable, ... }:
makeEnable config "myModules.nvidia" false {
environment.systemPackages = with pkgs; [
nvidia-container-toolkit
];
hardware.nvidia-container-toolkit = {
enable = true;
mount-nvidia-executables = true;
};
hardware.nvidia.open = false;
hardware.graphics.extraPackages = [ pkgs.linuxPackages.nvidia_x11.out ];
hardware.graphics.extraPackages32 = [ pkgs.linuxPackages.nvidia_x11.lib32 ];
hardware.graphics.enable32Bit = true;
services.xserver = {
videoDrivers = [ "nvidia" ];
};
}

View File

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

View File

@ -1,5 +1,5 @@
final: prev: { final: prev: {
rofi-systemd = prev.rofi-systemd.overrideAttrs (_: { rofi-systemd = prev.rofi-systemd.overrideAttrs(_: {
src = prev.fetchFromGitHub { src = prev.fetchFromGitHub {
repo = "rofi-systemd"; repo = "rofi-systemd";
owner = "IvanMalison"; owner = "IvanMalison";
@ -8,7 +8,7 @@ final: prev: {
}; };
}); });
git-sync = prev.git-sync.overrideAttrs (_: { git-sync = prev.git-sync.overrideAttrs(_: {
src = prev.fetchFromGitHub { src = prev.fetchFromGitHub {
repo = "git-sync"; repo = "git-sync";
owner = "IvanMalison"; owner = "IvanMalison";
@ -17,25 +17,23 @@ final: prev: {
}; };
}); });
# picom = prev.picom.overrideAttrs (old: { picom = prev.picom.overrideAttrs(_: {
# src = prev.fetchFromGitHub { src = prev.fetchFromGitHub {
# repo = "picom"; repo = "picom";
# owner = "dccsillag"; owner = "dccsillag";
# rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5"; rev = "51b21355696add83f39ccdb8dd82ff5009ba0ae5";
# sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8=="; sha256 = "sha256-crCwRJd859DCIC0pEerpDqdX2j8ZrNAzVaSSB3mTPN8==";
# }; };
# nativeBuildInputs = old.nativeBuildInputs ++ [final.pcre final.gnugrep.pcre2 final.libpcre]; });
# buildInputs = old.buildInputs ++ [final.pcre];
# });
expressvpn = prev.expressvpn.overrideAttrs (_: { expressvpn = prev.expressvpn.overrideAttrs(_: {
src = prev.fetchurl { src = prev.fetchurl {
url = "https://www.expressvpn.works/clients/linux/expressvpn_3.46.0.7-1_amd64.deb"; url = "https://www.expressvpn.works/clients/linux/expressvpn_3.46.0.7-1_amd64.deb";
hash = "sha256-v0rr1s32jj79A8IGfJgSGJVlz7rSnZYn4ealOpqee0w="; hash = "sha256-v0rr1s32jj79A8IGfJgSGJVlz7rSnZYn4ealOpqee0w=";
}; };
}); });
gnupg_2_4_0 = prev.gnupg.overrideAttrs (_: rec { gnupg_2_4_0 = prev.gnupg.overrideAttrs(_: rec {
pname = "gnupg"; pname = "gnupg";
# 2.4.1 breaks emacs # 2.4.1 breaks emacs
version = "2.4.0"; version = "2.4.0";
@ -50,24 +48,6 @@ final: prev: {
withTreeSitter = true; withTreeSitter = true;
}; };
python-with-my-packages = let
my-python-packages = python-packages:
with python-packages; [
argcomplete
appdirs
ipdb
ipython
numpy
openpyxl
pip
requests
tox
virtualenv
virtualenvwrapper
];
in
final.python311.withPackages my-python-packages;
# gitea = prev.gitea.overrideAttrs(_: { # gitea = prev.gitea.overrideAttrs(_: {
# src = prev.fetchFromGitHub { # src = prev.fetchFromGitHub {
# repo = "gitea"; # repo = "gitea";

View File

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

View File

@ -1,32 +0,0 @@
{ pkgs, config, makeEnable, realUsers, ... }:
makeEnable config "myModules.postgres" true {
services.postgresql = {
enable = true;
package = pkgs.postgresql_15;
ensureDatabases = [ "railbird" "public" ];
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser CIDR-ADDRESS auth-method
local all all trust
host all all 0.0.0.0/0 trust
host all all ::1/128 trust
'';
ensureUsers = map (username: {
name = username;
ensureClauses = {
superuser = true;
createrole = true;
createdb = true;
};
}) realUsers;
# initialScript = pkgs.writeText "init-sql-script" ''
# CREATE DATABASE IF NOT EXISTS railbird;
# \c railbird
# CREATE SCHEMA IF NOT EXISTS railbird;
# '';
};
services.pgadmin = {
enable = false;
initialEmail = "IvanMalison@gmail.com";
initialPasswordFile = (builtins.toFile "password" "This is the content of the file.");
};
}

View File

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

View File

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

1
nixos/railbird.ai Submodule

@ -0,0 +1 @@
Subproject commit 74ee66bcb6c3a1ba509d1e78435e391255dc0647

View File

@ -1,6 +1,6 @@
{ config, pkgs, inputs, makeEnable, ... }: { config, pkgs, inputs, makeEnable, ... }:
makeEnable config "myModules.raspberry-pi" false { makeEnable config "modules.raspberry-pi" false {
imports = [ imports = [
inputs.nixos-hardware.nixosModules.raspberry-pi-4 inputs.nixos-hardware.nixosModules.raspberry-pi-4
]; ];
@ -12,7 +12,6 @@ makeEnable config "myModules.raspberry-pi" false {
# hardware.raspberry-pi."4".audio.enable = true; # hardware.raspberry-pi."4".audio.enable = true;
boot = { boot = {
initrd.systemd.tpm2.enable = false;
initrd.availableKernelModules = [ initrd.availableKernelModules = [
"usbhid" "usbhid"
"usb_storage" "usb_storage"

4
nixos/rebuild.sh Executable file
View File

@ -0,0 +1,4 @@
#!/usr/bin/env sh
rm flake.lock
nix flake update --impure --inputs-from .
sudo nixos-rebuild switch --flake '.#' --impure

View File

@ -1,51 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 ZgrTqA MGp4jtyXCV3QBrIuy/WQthJGxLUnFNgZlf3HNtZtukY
jbskLgoJDhl755Qn4ZdW5nYK7Ug2eLm4oQyazff6Uf4
-> ssh-ed25519 ZaBdSg hjFZhYc4AKvp8585jS4pivMFTxPd0miyQdjJQjQvERQ
4P8PqJ7gz99nuGyAOh73gECCNTa8U56t/byr0h1plLo
-> ssh-ed25519 MHZylw iZq2dXCa4gSDpmbQazU4JPCXnbXjrMx2Nh0FCYACCTM
yVE+tooOjxvD1OBziXHz5yv0k2purR/QouE3SSzinPw
-> ssh-ed25519 sIUg6g ppAmkq3uj/heZ/RhK6BCz3o6d9l6tw+FeoV+GM4jh2M
F+Og7e744NSgaUs9zZ28ttPdbl0xkN82KgqGnfv/9sM
-> ssh-ed25519 TnanwQ GwsA+F4Co/Vxg5I04GxBW6EPPXOT2PtHCdiq6KEFJ0w
vcJiXNxnh32Q00VodKXhvTmiTglxSCiSPLwOFXrQPxU
-> ssh-rsa gwJx0Q
EoF9WbtAgRZyWQPtcwrQTIxXMfNSl6Fpm7DITAwocm04U2aoNEnhvsU/0olrCGpU
ez4CTnTZuOCVe8yr9KYjy9bU/41L2k89P/yk92i0Fm9412tIvYodSx0Qjju4hpPo
ptLAp+5wUgeRarEpnPHQBKnyeR4PcaVAeAYyiFHKjFZIaZ6oBEHbJGd8QO02RwAG
2hnGkVzHhQOxnd6VN4h4xP4BfWXZ8rwTigenVMSwMkrWg0Xx+iXPvGhbLh0P/o5d
VKtISQGzfL9rr2N4VYJHUT6JgQHNy66qd9YKrcY0bRanlMSeR7p217f/sKOc9SIL
h9URYNbaxGhdx9JuQVywIA
-> ssh-ed25519 YFIoHA xsirlZemMNZIOEcc164PM3SO2gJ6DrNM1xU2Phj/TWA
v0cCi2mVuPMpy17w6q1GLgv/5k6wetFFBUzeAw6YGK8
-> ssh-ed25519 KQfiow wVCBy3SI6pY/Q1C5Zqq6//KPHma8PR8Qd5DhwO7+SSY
ODABvuKUzhcuUj/YVwa1tCdgj/WBrhMHpwOmjgMTNDo
-> ssh-ed25519 kScIxg 9qaWKYi08kVEz5HnFluLfHJz0dNl0gqSj+yTBRmX5U8
2NBABg/XbcWq4gZp3vtnLZ4yBAZkPdXckDGnHc0rC1U
-> ssh-ed25519 HzX1zw hMbFcHddfBJ+fU2Ay+J+siEi/rH0kTXTRJS1pFe9rFg
IBPsFZ2vBc/t0L+anbugwX9A8lj8t6AykZzSovxTCxc
-> ssh-ed25519 KQfiow 5mUphYz0qwZi78nxpxrQNWeXdum5o1cVj76sSrDgIlA
KamxIS2NJaI7DTy9SJisGU+KTKTsDx7dXw7TlsSnq9o
-> ssh-ed25519 1o2X0w zwmrw9msofsTJ9qkqaQWs0CWG2ArWXIb3hX/eFlM/2E
L8CTuqIKNU1Ff2vWmIWtvLPmI8MOSlUobTLzQGladMg
-> ssh-ed25519 KQ5iUA 03zopYKa8ki6hqJiiFOoAE0cNEg6uGWk7VF3teDzkws
FxHYVfs2lCDlWspyv+03yjdJHSIIDUq8PTkhyLyomdM
-> ssh-ed25519 AKGkDw BBg9+2iPHediKJ0xd/tVcoofbJvws2QIF2yskvE1OBs
ZM32S8i6ZNG1cPSO3Ojkyy4JYKnJMXv72/RsE1g2o2Y
-> ssh-ed25519 0eS5+A VedHoAI2jnrcY5E+Db6qyoJJnevOJ4NF1YzSGUAP6R4
jO9JaT6BiuiriIpWzc6fpJMDxqu3718KMMcHWFtHq14
-> ssh-ed25519 9/4Prw gcQ7zE+fSceLHLIi26qs348WJH7Jta36N1dPRIp2+2E
69jtpz9PVWh1KJM5fKUy923ddah7PiwvabFsNST19Ag
-> ssh-ed25519 gAk3+Q C30KhWJmYd4D3bCuoD7hOZrehDhjMhTpzB1PmqRqph4
BEpcSaCnz8zLOho7Da7mBtAeLeCJMXbMkyg8CW5OKQI
-> ssh-ed25519 X6eGtQ EP1F3zxhA6pPsFl638bLkYgsBDn1NHH4xbR3U50ZtSA
0h8Oe4zZ68GwzHp07LjUmKA69paiGBQGcakpIi8w+VA
-> ssh-ed25519 0ma8Cw hQ1jQxz3XqtHo3ENzLiX85dmrtD2KpFb+Nx9t95EugM
1oFklRDdtko9lf9GxJbu0IH7uTD7Iae8nLA6KoVLA1g
-> ssh-ed25519 Tp0Z1Q VvWo+U0VBidsCCtQKWfEqcgnjzbi7TlSPdrqaZcAGzA
zRKu1PrurMXm/hQL1DzdgXQLDwebJCtcDzdiceBS00I
-> ssh-ed25519 qQi7yA kOOIJPZqdp7dRRxPLqwDlNv4OXUI+RYXkA5IlI0YP04
HnwjK1XmdwIL478UXhRPVPU5YCJYALnpmryF0Kaz5vA
--- 3MSdvhunDcposjHvMTMOSX6jM4Zj6EndDVgEMMrDpiM
òEÑ“É4š˜à`|[áØ ]BÌs/€£a1o7ðF'<27>xU§<55>¤qšáðpdäid®,£ìp“bB0ØL‰nÃã~Qm|žK\ŽçiM™G>¿ðx9ÿïÒ€Ù9òwQŒÝ=ýl^YÊÐ+E[J¤É<C2A4>y뀧ûåœDàQÃè1k†Ó
4‡ñH« Èh!

View File

@ -1,48 +1,48 @@
age-encryption.org/v1 age-encryption.org/v1
-> ssh-ed25519 ZgrTqA O0XHnLd6cH/2OZyZWRvB028wmx8x8b4ojoqzidpANQM -> ssh-ed25519 ZgrTqA K4oHCwQSxZ1cppAdEPDgn+3dU+LSgDIfAU0by61sLSc
tQXIb/FsHcXwBet9icQrU1gYxpWUXOMFnxhHq+pJegc fZe+0S7OMpGCEjvc1nRIYCbnorob+VVmsKuqfF8W8b0
-> ssh-ed25519 ZaBdSg dXtxOGI6j+NyJadTzlhTkb+6/rf5BEtUeZCnH4SjpA4 -> ssh-ed25519 ZaBdSg J8j0FbAPl4Qpib86klH5zTUgsw3cN8mVIYzl3NwcKQs
UCqDgtXh3tMFGz0xDyWn5I81S91CRrEJ9j4LAUN14vI i5o2r1MuIgS7Nn8kEqndDrBzQYbQHNskJrfQ4YdL6kU
-> ssh-ed25519 MHZylw GGmyYlC28NKCP+uuAQBO3EIqB+XY63SCkDN4e/WdGkY -> ssh-ed25519 MHZylw jaWeU0jQ/B21yGKexPCXFvD3iX7s/sx2/ipyd3eRgUA
GVzmq2tmIJvFnmMnvO12Ok8gOofTRBt20HH586tNzps 6DIihnfwP7CxHe4MuNhCtJwHYxS+kJHvvQ1dPsUC8Os
-> ssh-ed25519 sIUg6g +VSuYouQxNM8Ch9xTIdokrtAK6RU5NoMNN6nUAr+rQQ -> ssh-ed25519 sIUg6g ntffSUnIvDQ0LjnEhqmuvChB8Sh0r+b/uHnOLCe+XGU
GDRltKHjD6D4d9Z0vq04M6ELi53GdZZFAZde/V6YzuE PcqirbvgQfbwXuglHeLLcWIBW9Y1h10MTWDVKvGC7WM
-> ssh-ed25519 TnanwQ HeLm9uq5waI09epfKCsRLFO0Ll/V9Rg6y7LAOjGKLmc -> ssh-ed25519 TnanwQ xwUFbOhYArMRVs6/LTwRSTeTL4hcTmm0Lc0umSKWYjs
jjpTs70FeSaxBH3OyvEfGl71kpVRZmtaCkS29VXehVw te8laPg+SWEYlzMKi7k8SWbxOvRBldfq1/yLK1zsHXU
-> ssh-rsa gwJx0Q -> ssh-rsa gwJx0Q
a6q+jlWud5INiCOwPH570EdyrEOahksIsz5ehCwi21xUpsw8uDAJvwJZ4LTUk7Pp HyRLUjc/IFJ3E89A53Nkg4feaGYqAMJxxchQiOvossaBXa8q+ijm3rHIu7B1cFwj
rgCu56ndd0LBqNAsqCO0NeP6rHj11Y9gVI1VAe8JZwQAd9uxP1wCFSamGPBAG3qU bHIjhjB0OHyTjG2e5opqpSf4Y5ZN46m+Yun2R+Bx9lWSpajqG0G48vZUyNVYczSH
6K7tSWxUJg5E5N8xn0UVasdC49PSadEBpvWOw7gxUcZSZk+zdXZkmNNJOJjblp48 7BmR1I7wMIr+twGRtzgkQT6bRJBIyNlzR85uIFxD6hXabKWMgOBJW7bS3jTnST5+
BzjLiFs/NEapIrpx80nXurSiyN5IV97vK3owXqqYSKOoBR2JWbVeYVO47cR9UN8G elgjI9FKrZKXlfG3CockvmQzfSXa2f/RBoz1cYIDYKH1E1g5K4l1nXaX3UEIeLbf
df43ozz2wrG3tfVgy23JfRUPinDxPkUJ0AbkpD7aBuEJfFmQSDjyl+wGevf5GAOI mXCbevqQHkfSfL+MZOuBYp15qH+YCURNPe1moIQLPTeogKrL1wGdLQKZD1bnvWru
rTNpOz31YvchkiynnXLhyg eeRNXTWdtflRPzDgEYzquw
-> ssh-ed25519 YFIoHA 9Sx54ArYGvWtaM64vIuh/xNfC00Kn/6OiIL7zkK/IBI -> ssh-ed25519 YFIoHA D/qb8BMMQLet27WghcZ3R42cJtclMmIvt9HK51xbmAo
cHLc5wccimYC6ICqnz3e1hs+4XAHzRd32dj0/g+4q6s q5jPIGu5Xb/Qhq4aOvRkXMt3YqL13mpcbvQAZaEi+90
-> ssh-ed25519 KQfiow p7igfY7SkJe2k9EZMy+VEr+uYnEZZSosmAJKOWwopDU -> ssh-ed25519 KQfiow W+8Ns+1XRLisGKJK/ZsBbHilt4MfdSNCCWEaf7WU3FQ
z3HZmOrrhK6Ns5z5EOtlgoo6IROMuo2elRrnX/I9YvI D4AHzgg8VKVYXFTxFMSVd2I9EjvpX33aTuNx+POPiSs
-> ssh-ed25519 kScIxg de1921H/EqUtCsmjytrGa/9vx41qKO/jiTTNRXRK/xg -> ssh-ed25519 kScIxg UrC0SCpqBLgzgzKHo5vyiznyw0XuLGvlaIaQ9pzSD0E
IzjtdSwv/FwgGyl6qumTvDi5imcUKolt5upP0hNDd1g OOqxCww9ONPoSnc3jCioFymblURnt6LRGn7GRiv5MPg
-> ssh-ed25519 HzX1zw u7OB64Wzd4siphc3kyRbPwYswc/vn0eqtUiId5byuVE -> ssh-ed25519 HzX1zw l4+x9GZQEuMZ44l7faHKM2/qVxvlxMfeZZPn1zxVCmE
t8CF85/o71ra6IAgXAfcoCZHs4VN/ejOQVsdUZaaLqo VKNhloRSvOeTPoMNdHjdrwdrSuspmADtJXkiHHh8f0A
-> ssh-ed25519 KQfiow uzyI3JXAF3twmqSKDZAgNEMv/Su832geK/y46hKiJCg -> ssh-ed25519 KQfiow ehBlMZZKtoAQoHlrpXWKdZqlZlRxb0ChQlVI6+lRUnI
qpbPTkQYUcPSuFEXoOnYmGLcAL2TH2XpkBOqeVvUVVk fcRaIUF7hrLd5tiOApNpVRbneXw+o16PhNN84UIthqY
-> ssh-ed25519 1o2X0w u9pY09CQumynSF+9z59nuEuZFPwdVld8XQOLG0N4llw -> ssh-ed25519 1o2X0w TZ9Oacj2RjbH8xA1Jm2ZeTadzP6EEWxhRKQA1qXqLx4
i1HrE7Nk5O/h9eYGeq+nx5UCIgO2c0ROHcwUDiFFxoM mjfBINzktzGylI6jQVxnjkMBx+FObSX+DUn+V3MGvXQ
-> ssh-ed25519 KQ5iUA zpOP9fMu7Mqm0LbkA78KInXworz+LGpovjk5mIOOfVM -> ssh-ed25519 KQ5iUA DM05V4Av4tZmEuA2YHi+MsecDNAM8SJe7S4GTLJgFzE
Q2y9sMSgwIahs+7ceXY6bYha87uXcD28irc4zRYbOSE cmzJWiUNfYRnjaHN15V82NwZVK0aP1U+6D2LwCm6fCI
-> ssh-ed25519 AKGkDw mLi5T/ia2gQ9z357LYQUbgUQ37DLPhbRlR3LkPvOPk8 -> ssh-ed25519 AKGkDw bYtN1r09N5Dp2/I4FqM8axT7eOelcuZOkeBjnLmCEhw
rPUwUtTwDAbn49GgLO9vfW/P8hfrhf4znvrmHiiPXLE aoWTidCHSj44RSa9KsKfcSAc7AbRQApJBLBQbiROACU
-> ssh-ed25519 0eS5+A DomPBIFcr3Wxi1sfGzEBKTpRruHijRX5CDh7xk/mQgg -> ssh-ed25519 0eS5+A jQ5PSkWblPM6lGu4h25EDDHYLa7sGs+lEKXPqJa5HA4
u9hQHSq3w/NBv3zpIpbX3bMk2vYaNn8dl079zz4cRmE smh/u69PfMx2EqylwqrUi6CAgLUJeoM+M8W10nTGx2M
-> ssh-ed25519 9/4Prw kczIhptmCQmYolhBX+omXqbtTuqqEeL8Mnx2k/1c3Wg -> ssh-ed25519 9/4Prw GkiZaxXpmoZWr7z1oZti8Duu3otcan+41Y588lj5igY
3QBDp0WfYP8Ni3zZ3xk8yC5WscRa+niwjO+6Q2MR9Is K9CXZhfK6OvNyGmXsLwNFXbME8JWkSAkHHika2d/CIo
-> ssh-ed25519 gAk3+Q HhCggnhkMhbZG1VyyjtibA7eAnnhS+ZVDMuKmFW+fiQ -> ssh-ed25519 gAk3+Q NkURRxA3xrGDVVrrpZ/DRcUmQSekNratAm7oNFsfETE
7URzpfoMkgD/Jn0N2FV5WJxLpDOPkmI3W7yA5G+MyQg cxxRshJK5Z07z6+zR/A/YpjJL5iVYU5MJFqn2Ayb57A
-> ssh-ed25519 X6eGtQ KBzu6+tTigAYC+ifRi5rGyocU0l1PfBj2KuK9yasUiw -> ssh-ed25519 X6eGtQ dGRh0CZ85+eMWTl5Jw9xKV+hudCd/68cKIUv2yBFHk4
ShtvUv9tuuvYf7dHDnBIQtLWVkN9gaP6ryyeCVoNVIU pGaVck8ofB1zfa40HPVmg6Ie5IBGtcHcrBjYzgyMdME
-> ssh-ed25519 0ma8Cw 4kkPaMRoYuYflcHDAzBAaWd9+Q3CXV97Hs7d8sFIU3w -> ssh-ed25519 0ma8Cw vStc4U0W3tFYLt7UM7c14cDPKBMZ8V8P/7pLNWwGGQ4
7JQH4QYVnnxhjfr0wQTqLieGc3G5ymEBdivqO2/vEWM KUnDkVWvPcZOah0J2fvRuUpPdqO7Y3S+RO45T5AOcn8
-> ssh-ed25519 Tp0Z1Q 3GL4a2CUqmbEK0POxjUADiUtnA96enIKavGEJBr4QTM -> o9|-grease =+0PJ {o J4(=&# U%mg
RP5mZ7PKqB29cU5ir3wiX7CDM6KuqBysO2g9HyONlKE Ee6Nr/v2nVUTnuAZQbpDQow1p3415iGgPpUvPM8FKAc
--- hLdA7jp69UiOM2LP3bMxOCNnHUWwcgL2BbSsz3+D8lM --- HPRO4P0TAjUX7A3WH8f/WMTRrrkAHOrazZlz276pDdo
2äüï1<EFBFBD>Q>å¼æ®¯2-·¨­êÜËòRÌ>•íB¥ü”(„^~(ËÛ»¢¦„?ÈÍn*TÂÞMK;oNîW—ôöèzðÊÔ; ¸¬=.¿©‡È<E280A1>øJ±U+Ïa<>QýZrÏÿg^åÊ"RÏ0³ËJÅõc½á4d?çȦ3ý,ÜOç†þ ìßÊ¿Ê/à2þÈ“ˆÓÈÈ'6aIAcÊ»¯;ù…ªÄx¾+ÆE¯Öî*nJ1 ´u<04>íÃA<C383>иÆÊÒö¨ì)<29>Š6§g@Æ_xOT°Ç¦ÒÑ­ ¦.+ÞyÅú ¤ËØïuaz€”p¨¹Òœêع~åz³H£ˆêØÂýùƒW|}¹ÙðÇU;ð)M

View File

@ -1 +1 @@
cache.railbird.ai:KhnvcouxtIU2zxUcjJsm4bUK3o1S3p8xMf9qfZGF7/A= 1896Folsom.duckdns.org:U2FTjvP95qwAJo0oGpvmUChJCgi5zQoG1YisoI08Qoo=

View File

@ -1,50 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 ZgrTqA fUdYNjuALrimf6eo5FoqjGF0Zvzo4HBMW6cr53NO+D4
YPI8i4LK2Iz0C89Cx91kx0z+oLQmzVp7rTI9r7+TJcc
-> ssh-ed25519 ZaBdSg 4INz9+Kf25/qCECW0ylv3oZ0j6ouFJigP+gVSvm97Vc
mmzlvBxYh703ZEzf73FF7ifDjysMEl2GOT5heGEn+Ts
-> ssh-ed25519 MHZylw I/e6YCpLKOmjfmnkhF9qsG1S690YuCuHkHm10SOTSTo
3hnodZC9lVNTsigacqP26JibaaRdModVJCsaiugBNCs
-> ssh-ed25519 sIUg6g VTWz7slnoJSC5bpGw6o5G7n2y439GbjNiZaFMLaN5jI
lIJgwvZSyv422Nqct3LmB65ga66y4WSp0ok9RVN9G0s
-> ssh-ed25519 TnanwQ jnix1dT8u58lNCEmn4mMEn/66XNhYkfOmlQzz9ybpXA
rpJ1RE1aN8ZFvwXdnWMz5WmtIPVYuaoFW+dUxUHSue0
-> ssh-rsa gwJx0Q
d3ys74cy6D+bpqZoaWyzcCHlgY+2sxSR4U41KpLTa1CodYQfhf/QzfhMhNRbKNrg
eoFB4Z9QSIkbqQedkqmR+gjDtklSG/Jz/1QZxkKm3pRulDq0YA+crduA72Xs+ReF
yRfAotYMZ+fJvJBJ4C604XzX2JyDsZ9pMxvzH3ntWLL2ay9wgY8beVekCfyAEgr6
EmFE1xPS5/SvEGz/3x0pxn6qtGXR7JAQYIZw7xVgpLvaY+yGjBGgF97RT8NZKmps
Y+4DpQMVhJpMREpsGa78zN2PNsZoV3uc/rT7GLfhX1NJxjDfQ5whLF4ykrerg4ZB
Mm3HhALUqeGd8trA+dRZiw
-> ssh-ed25519 YFIoHA U7m8uc58dgdk3HS920pXyMUwSustTkyHbomhhYvKxhc
8TRED2gwbj1IeZxFR9EmkTqsVLgl1pLgja7FpRvw8WY
-> ssh-ed25519 KQfiow et6x8B9B0X0hX695r/tfriEoInXXcHUkAiaQhXK6NGo
UkJcdPjs1q//FDy+dGY2uaaGbgw6azVB1/zc5wrdQy8
-> ssh-ed25519 kScIxg 9UbFUlg4SGEY7L8vOummxwHhypcipPtRq/yhw8k6K2g
vfLB37DdDA7nEXlNSkJUXwDwQ5UoDonkiKIhSjG4N24
-> ssh-ed25519 HzX1zw 4LkDXxeqKtYI8EhwXccMRlRw88flevLGFgzwt9nbNWY
EtrL0itCfPvQtrIFWXqnPoje6Cy//KHZ//OwcibLy4s
-> ssh-ed25519 KQfiow VPlZHErfIKR0NOG8/Rqwu7LQKP13izSQVck8s217LkM
v8+OEZZTe+pybXqEtUQ1ILNQ2TbB4QSIkHacMQUkYGg
-> ssh-ed25519 1o2X0w s8Of4YUoOKrBMa2AjcBYFXPEqwmjZEKGpGwf0F5Z9wo
ifK7DqiArFCFIjxMHxLB1vlzZ+H/60H+a4xdmdvkf0I
-> ssh-ed25519 KQ5iUA 1Jn+jIAmcJ1QUbC2Yz6XfVoM4XbS3HHEXJHJvDS3mlE
rsmCtAlqxVzUfJeRT5kmU0FI5cAiCtqA1bpeG0aci+c
-> ssh-ed25519 AKGkDw uB/GYB86+P5I9EtWJjCyrPYJKxlF8KLwjVacnS3FYg0
kAsGXL4c1IDU3rklHnyMpY454DLSCibhEy5U9vfoQxE
-> ssh-ed25519 0eS5+A xe3LGZVaCS6rCrULdfdtHpuwdnib0FizFhseyWjUxBQ
nKmumufCm1WQj1MdfawMWFHztFJhP/7+4h8f7PD4+z8
-> ssh-ed25519 9/4Prw vsOHzuM608TC+t+dqQbMHtZnTcfgGHJq/CfVazWeVFk
I/w6R2t/pmdA+Ktool+1hU21GjjG/hwe0vSq89jtULw
-> ssh-ed25519 gAk3+Q GMi0sxNOfeqbmMuU25wGnZdLx8D7zTYZ5Nx5OLjOaCA
eweAPpjwjHYdySCtWbzwpM9RZ+Ohim/0HQiy2bssIFg
-> ssh-ed25519 X6eGtQ bTbsvZYuHIYj6AUQ8hLvn9OKLhapi3VqU7nUDT2kxRQ
X0Kh45FK79mdXA1AqySw/rC73maypSP5BpKso0BKHeM
-> ssh-ed25519 0ma8Cw miWf5St4zNDpl7ydZPm4NDbhN0Pp5jAP28IdIXfoA38
yH13uHPwUCRyaXqnieNvkDDNkrACPaoIVFQUiVK2ZLk
-> ssh-ed25519 Tp0Z1Q dvgXe3vQqY9le3KaROdzaP4jnjQ8kljfC+D/sSpwjnw
/fwCFlvRRwUZ0ebYXJTdlGRxY6H9elCh5ULsyLve6IM
-> ssh-ed25519 qQi7yA 83iacCsgW3Iw83C753dqBCM6/i8qyKLqJ0AvEIgxsT4
uI6NwcRcJUJMYR7vMhZvlnmdWRV9J4FUm8KbDutuKTo
--- o88XKoHrskw3WGcaj1Ie6UzwfWcfKl76oO8zwk2jcNk
z…ðÆeïYòUêp[ò4ËVëî-þLE%­Â¾Ó<C2BE>BSWõ²Õ½ñ0¼ÿ¯=¢‡-Jt•ÌO<C38C>õšï<C5A1>ç€É9èp_Kd¬

View File

@ -1,49 +1,48 @@
age-encryption.org/v1 age-encryption.org/v1
-> ssh-ed25519 ZgrTqA zsIOhgeJ7P+Ahrrh+coSbVgxw6RtPymZs5ll8X2BpTA -> ssh-ed25519 ZgrTqA ZhQai78QiRxex0hvG+zf+qL1hbTb4/JVJVWmDG8rAUU
ON9VLFUzhFU/sxslo4Wt7EgohGdY+k58ri+G5naolLs yKincV6tR86Qr28JC+0+LdXWLamys7D3Zka6JKFk1sk
-> ssh-ed25519 ZaBdSg /OzROBe2BME+hsdWTna+UV4tIEJK9lDDaZQnpUYWfmA -> ssh-ed25519 ZaBdSg /bWisLCN6LpAZpgwqZvtp0Bpmr4EBDZKKw67w6DwCDQ
PjU8bzoct2GPytjXMxbYdPlGi9RgfaGNdlcdx8X9mcs qdlTc0+bgu040JrSFHxVYhOOjBgL/mlpv41d7BnbBdw
-> ssh-ed25519 MHZylw RKGcQyfmai8OeNo0c6zyW0KaZ4Mgt66qikomlON272c -> ssh-ed25519 MHZylw 7mUaZTrTTusBBB3c9bwD8xiYOEu2Yy0vD0/JBhIfThQ
lO2AvsQ/3oWl0aNzitwjnFOV20H//wiuMY1MY/3WDrM x9vauqbTA+OL4yObO5EHsXhSurtYTYkSH8VQKl+B4Tk
-> ssh-ed25519 sIUg6g 8at+Rg94MgOePuOA9fUCPuxyleQHDaGPnsaNQNy6824 -> ssh-ed25519 sIUg6g wPIoib/eshBQvzAKdWqD6eWyWozxKuOf9h6ebG3KmUo
CCNrSkINVlqAhi2rzAEjnzX+aJBj8S7D5OjOc7+282I 9D74H5EqsPlrNCgrDJo7ZofwNz0JvB0GzvwI4RAILRw
-> ssh-ed25519 TnanwQ JQ5HncLZsUKpXbUhRBvS+UdMa8ARJBRIK75w2kuD0Hs -> ssh-ed25519 TnanwQ aFqE3LuU6rjBTISLPzdz0dCcurg/8T6CLFI8ota2m2M
6giGtalrSpcO2Xb7IxCvqhi7Op/wdNnhPqGOVxumutc sFCyTPiqu6t/qqXSdmjnDVYjIGDLEGxUPYxerUTZlFU
-> ssh-rsa gwJx0Q -> ssh-rsa gwJx0Q
q9YKescXHdvkSEEL+buHyFpedrkyP8KN+U5mwe4ML9bdFGsEESBjtwRs+wTHBKfR yKgI9wnuT5YhySbf2mxkNwnSgdHv5fnaDI759day+jw7rwtV/Q/RoWPghCEfS3T9
DGueZFt8yloafYJJi2bDSOwQM+YQ7l3I9pmkdK8xppUpoxc5lsd3za4tZvl7Q3mQ +u/dFpNubL1+Sue/d0PxpJwaGV+nZb13/a1DpYZaaXYXIYiMpBaZR/3bCF1uSuOp
JMgqfQ1pwpPG8YnKEnS1rZ6DFq3wJ4dH5dOkEcSkUflUse2GrVpkFHA6B0iF4Fth LAJAqS2WlG8+ysTj5EN+RBud4sFYYZ5gp+xk+wX/aY+NIxjQ/cKhZtlk9e9THAHJ
F8cpVOpBh8zruRp5b1hNlzuC+4E4fgLC/dqo/WK17gEQmPBoVLmZurAsLUz63VBR WYdYkc25sp7DCsj5HlIczkmx2Wn2wajJvOKOBK95Jijn/y7+Zj+hTF2MKjfRJnGw
XJ0cphb39Jx+OqID0pfoRx8F7pWNMXeziQ/figtfX1BVsvAgAfG/G52UQIHPBB9l EoizLrr1EN2hkCbUJCwbef2NNBlUnI4A/LvKvr/2xmdw8aJc+lgEA1EssVab0Ugx
lRbUKp533f8J4B3uQlplAQ jgBHsW+70T/yT8CbSo+n6Q
-> ssh-ed25519 YFIoHA As3dFA/KZEv4uK3cABiksYAbbRKD/SAYHn6DMu5A/ho -> ssh-ed25519 YFIoHA j1o7t3EaY5JBJFlxv406aS+5nrQbjj2xu2l/rkwsfhU
1Gui6pI2/Y/4fhL+sV+ReE/Q8YzOXpa+el9ieDI63hg CTlM2FFqysa2cu+tonQ+XtdkOe8lSx7bA0XX5cRuHh4
-> ssh-ed25519 KQfiow JfOvjZPAjSMEtyMj1ES5hgZQ3ChceOAgCUlAwdUWvHE -> ssh-ed25519 KQfiow iTAhqJszH3qfZLcJEPsPUOfsg2lnWE1yGcFHmVqcK04
cHOS/ogIjIt3/cpcsip/OUbTa/XTsqabxpih0Q4d+vs rAcVdfcrYcqDTUiyB1Xj3OsxQZGaXsd7XPT2ZENZxg4
-> ssh-ed25519 kScIxg Ss92xRhzfFLuQ7cZ9qOXWYlxPosZJiIA5WUtnBn5uAA -> ssh-ed25519 kScIxg SdRrX6jPDbApqYb0BUvoPENfO0EREAcVzov0mYiqfW0
eFbchoQ2WFT5QZlbMp3ie2IO+oN1gDx5LEHYgtmibyU YxCq3/YI0RAI6tSe2S9eFFHRiRT+cgiqKG38R1Ed0rk
-> ssh-ed25519 HzX1zw CXFvvKTr+chLDjxeHIQq6YgfsyNguoqQgWMVCriq03s -> ssh-ed25519 HzX1zw +77mjckApgLbOn6r+E9ftgUOFFhDX7t6wQcCn8shA1c
AfZclyaLfIyVgRsSt6gFw/n3Gmjz9+qqcbS+jKLUTdU LzP5oBw0YDfET9c6AiuRUrDPAblExBtPfO/aLM5bTPY
-> ssh-ed25519 KQfiow hoWtmj8tL3hYQaCusTzoEe2wy/hzOBQF/+ygYN0j0QU -> ssh-ed25519 KQfiow /kv2czudYV5/knn4gm9UjWkTgK7h52OSwnBtQkJ4Ogs
lvfAsrOv1vtQeYvlacFyg6rlEUeb2nwxelSCkHZL1JQ x3U//RiRVbD2q+2BB7fRZ+D/mOuq2RBBrUwRaGaZ4t4
-> ssh-ed25519 1o2X0w hSNKyIkQ5HrqUodLzWRrx+7RkxFg9A1TVuXbq+EFlw0 -> ssh-ed25519 1o2X0w sWQrEHabTxKgPXctvjbozGia0TOFNY/nMkJkbg9wjDk
CXUpZnKGuXV34Tt4YWGL1hheYHSYB2JonuxmZC9BNZg xKMdH3+dGd0I/GCuII/29D49X0pGTkB3lig3PizcfAA
-> ssh-ed25519 KQ5iUA jbUaWkNa1xj8gKEalGx7wJWcVwwDWQ5Mzq7kw0Rk3BU -> ssh-ed25519 KQ5iUA 0GxPwSfFhyFmgFjg17ZdQ+Np8ozLcZw4qnmJXf8e5Fs
y71HcF0ApASye3RgUHEThP1aFZZX5jocKHL25qZ2yZ8 BmMvDNnEFqRHN/DQxTS2xYr64rsNwwcJ/ISx+tSgwIk
-> ssh-ed25519 AKGkDw n5MO4SkU61QWZ57aG+383Q3raFRdomDMXGaDMgpQUSs -> ssh-ed25519 AKGkDw LP67Vi5XAYaeCRzKRvUol+9sYhj5DfRM2XFcfpBObCk
4g2UfsdaNa++TRXNrUfVV8pj6irb0W+F10XfVAPJk+Y sQR+s300FSVp7MGvc0lAlsiriF1yYG+gv2O8qXLC0qI
-> ssh-ed25519 0eS5+A DMk4jzjnfPWzk3kz1gwebXqJ5a3yAvqTi1fXCEBLi2k -> ssh-ed25519 0eS5+A 6W01v2D+eo7ykmdt/c6+OngbOgPYhp3IRzOP7YycGAE
JL5wGUcHNQDz4Czo6yQ2Eo5sc0/psjo0O0C9unL3V0g xSiwX/pPa6u+wMP99930ZALt3fUI52k56o9DIj5MJP8
-> ssh-ed25519 9/4Prw 9RMdxeyRXz8pKxAaiOrd/D5UdImOB48C0OE4x1MbSnw -> ssh-ed25519 9/4Prw OhlAdZNG5GI60FecavQWNBHWOK5u+ONItDSnJ7kW6hE
5m4g4ZSMLP99bYR0+twroVvnowpGBPolw/u0T/wDCmk KBybj+3HZ4FCHht8lwBqJszCMZvylSoLrnOeKslDvi0
-> ssh-ed25519 gAk3+Q Mos0Csznmt3wZF0fE+BKlqTMJgLKR/+Yih7DTNaLF3s -> ssh-ed25519 gAk3+Q t5ItGM7NarFQYDU4Ae+39ZIdhmnX7liY+bqRtsqY8F8
EfaOXBbeS2q36lUfydPL35GcL0qzxEyG1/g1HUk+Bjc o+MKA8rMnXOUECFLf0bnqo4uohTjI2PN2ejvKSDbOeE
-> ssh-ed25519 X6eGtQ 3uAhhDAEQQCu7MQmNbEAs8/bDxEeh50VefU+prQN5SU -> ssh-ed25519 X6eGtQ JbV/sf9/HVBpVcCym7rDvSXUNvE7t1/eHQpIjksw0Cs
jdp6QFF9Yw3zHrbmijJQV0CqlcoOm0BU3fkJTJAsxpY UO0cDqFmcEQt+vasnMAc4O4bmEkLdkYzj9YzsMmsfzM
-> ssh-ed25519 0ma8Cw +7QmGjIuxHsqeDxeLkiSvpaC7ztv+Ix0rEwEhbTeHG0 -> ssh-ed25519 0ma8Cw WMNiHynQWBF/8ig0JF5tZcGruRDHHxlJOQtJalv7+lg
DUHK8xqoxnE78AMIh9z846eWcSToc6PruVERTOCdya8 8U5QXXo3qV9QlRZobD2K4O01uQfzCd+BSViZf9fIRYo
-> ssh-ed25519 Tp0Z1Q Alv9QyL6AzdLRTyN8pn413eeKW32ql3i/WVhasuKETI -> }-grease WA!
EkkG/JknXDT5opzLSZ3Gbf8d3+FlHwwxzbZK/nCQ6ng O5uhSTAdlz9vuYJoelzj2CABhv00grAx
--- zN1cSiDL5ZI84c9DI4ewQLqaGZJS1IR6EoSlpQC44zI --- m3xCzyC0aFdfuklw+MDS1kx0oor72n4iP9w3iaYDpJs
ìØ·ÖÛ¨9HÛGþ.Dh{ø:—æpí2¼yY±ìõ`…o“cð©$ŵùZ î1úèÙ;b—2_ë±Dz« aÃêL15OtÑ“‡»Õ!+ñܨ¨PlÎEÌ23£"kzdFIEÂø³¦ªÃÏüà‰w…õ(ÿæ,¾¾K”<17>
ÂåƒÎÿ´ÙT©¸¾IÃl2îóOÿ¹PÈøšù™$®G

View File

@ -1,48 +1,48 @@
age-encryption.org/v1 age-encryption.org/v1
-> ssh-ed25519 ZgrTqA Hv1BMWICdw57RojY05L13liVfrg9qt6WxhiK6SAnqnc -> ssh-ed25519 ZgrTqA swipq6Fr927DGa/aS5gVWl3TaGIwwyVn/pLb61AOjBc
vveVXJsn4MVYTLX/HvKaofXWOeJ0IMdWSeDljKSlSwg WZjYqhvV4UuYRWE1VOhlrZZwDZl5LaTgwJRpidx6xBE
-> ssh-ed25519 ZaBdSg iyNGSlaHdvTctpECP5qXFSO0gC0skd25gCidX8mJhXE -> ssh-ed25519 ZaBdSg j1wG6GxL536GI98uQDjvd3k4NX9i6xJaTURsOeM8tmI
4lC4UIFuPimSfPuavLjhR94M5roDeco5yRDClI4P0V8 omHmMEDCCjoCDb/CClty0crcLxyGgHUswr4HOP4L86k
-> ssh-ed25519 MHZylw a8Ueer7YzQ1f4PPgedktuyNWa1r4cE3u2nDU61nC7UU -> ssh-ed25519 MHZylw BS4N9FGQvoBFYMcUKZ/0fNAR5b8gRdEqdBahN4IjhWc
SETxeXg59NOznOfuLvduM2tKUolThR+CNWVCAj4fahc ZnDyOGMiVn2zyKisDpHu5o9AFg+Sxsor09p1BpL3hQU
-> ssh-ed25519 sIUg6g A/C7Vtugn4p3w7gc6s/ZBbTIUW2dOEcGwSVfm0kwY1c -> ssh-ed25519 sIUg6g hGohSvdPUBmiD5XvGT5S8svHKeoX4iADR0wnTXBrvm4
66bSBWF+ZVKHvmEi+OEnfQF9m+7u+W0VnbDHxw9WY/Q q2kb1n46DQAceE0PpHwk32cycGur8eWGUwjyfp4o38M
-> ssh-ed25519 TnanwQ E2I98KMUGzMDiyJLUeZcLpb++1v8udmnONioiVmVzyk -> ssh-ed25519 TnanwQ 9eI4k/NX5NgWWsydOu0bi8OhBncIKS6xyMEzuJrYY1s
Sbc6bfi8VUyO6eBBkyv5DoEfVNd99K1G8NexeDmuDhA dY4WyWbqcGS+RQUM391kGBlRXFzB5fIX+PpVQPvcD2I
-> ssh-rsa gwJx0Q -> ssh-rsa gwJx0Q
vwnSvESPfLtlWVchHtsmPAYqUnSoKIjf16qwk6rKD976cDQt8TEQqKjbGExHNBZF Hc+8CkU0zml1AMG2z4mxx8/0Yd0YlcdSkPgMqXk7TL+Pu7uJPLNfsxHDGKFKLeOJ
hnXfPxLy4at1cJzPCVOsumGVdkTkGPhMkyOSTnzipGBA0hiFZ/YKmoqyl8MnOy9H uWeyFRJHXx3gOoGo2sQpMcInnU1PL6bNq6r86KeUruYDUMgxak8Pze9LFv9ZzsfY
RVd51JJLdmUUDUsVLdv8DEbYw2mTmLJsoum+LXi1oYHrYqhQvC2PhXH8b/jfn0En +nJ7u/kpSFvhRQR4J3cbwK3ZI2ezWHGi6vClGf+Orxt2k6I8WkwDPVC7+xeQDOFh
vYrzIxbFaJ/xw6o+T+4G/5d3DCX4fb9ccYHnLhv9GQWvQPH+wEfYkKBaxriur1ir pFa1V44OfcJXeSLEyioPKxB2LXBl30qcVcWiCMWyHt4GiITLovGKqYxrM1Q5jPXU
9gkE1kErSzemr0sND5NoZKkGqf4P4ear3Vnjtf1gg1Can3Fqutb0B9ou71RD111J Ty08vkYlgqGEOdvmE4LaBsZ/SnKukArUHykjstUp7bCqqVAaywy5zcDt9RhOnz3k
SupcBHc0D7Kc47CTzI/V4w tTSB2Gy5/reAD4NqbLb8Sw
-> ssh-ed25519 YFIoHA HSIHZ70ZSLrbeieWFfRI8Syj5QVr3X3g3J68ZEsOSSg -> ssh-ed25519 YFIoHA 5dSh3gD/8VZAzoUqs0qhcPl91+i+Bf9et1DXXDukr2M
8veYBdbZfkqQ/7YvpFeE7pjWR1hZ9HF4JfM5yPUdl3Y 2GUCUGw0lqyJj9Doed75mG5ix3La9BjeLUd39ZiTeyg
-> ssh-ed25519 KQfiow 4Ofzo/KS6qE+bb2O2l9p+Xl7sVSyYztBW1wy7e8aGCk -> ssh-ed25519 KQfiow Xv1iY0dBtz3V8T5GyPET9BwqbX4Y4af7eecBY7y1Anc
gzeCLM85g+tSGYFAM3z03HVwyO67sriOVgL6uiOGWV0 ts5ErCZqFcRTf6lLprZrr2np8o6BBGblRPrOh44UFNA
-> ssh-ed25519 kScIxg MNZ5ZwjuGahkB/N3KlIzCwQjtenikYhCcqOqUsotG3c -> ssh-ed25519 kScIxg G2Je9Qp1A9Zj9b5luvK2sJO1SWy2AZKGcM6EHKigPns
SvDAuGNWu1SG7EEQLJboFJ0VKEAbcc1rZbg9LCdxtyk bKIxxBdJ+DiRWuXRNDilOKxQJdVekzs9IwR7GiTireY
-> ssh-ed25519 HzX1zw 9Z3XU4h4otPcP+3hx4gA3t3/T5RJAOyf/Lm/gWK8Y28 -> ssh-ed25519 HzX1zw wMhENDQMUsij9CbQaxkVIglL6WBZlDeZbRLqm7otEAg
WEpitv/XIXxHg0Rmf2zibIq8Vrf01ieEPJ9teXgHp1g gzlH0PS+wgoHm9RiJnOwJtxWdAILLHNGOd/lsk35vCE
-> ssh-ed25519 KQfiow HF3fZ69+NwB+1tyZDoBb+vL7S0sAB4VtFbteA8l3myE -> ssh-ed25519 KQfiow 3U/Gl7VGyBSCaQ06XLIatyCUsu/78MvyuyUXoSi3Djw
EPE0dZ4HAsE2SLXT+BlDUrWGGNKlBUQZLYVKiOYwvs0 HV+Dj3VpnCdzz7XuRfhfJGhAD+7Fv+5vb60VZI2/T/k
-> ssh-ed25519 1o2X0w NQodm0eoA8H57E1Lgt11GubQIXXn+9a9Ho79akD1FQ8 -> ssh-ed25519 1o2X0w HsEk1SiUhTqOTAw6DminH+BAc5Y7Peogb3BuGpgB6FM
pG8VFyXUBsrTKEZnR/pCU5pZaIBu8s4l02tv27IFBO4 Zm4j5robwQS5T2sBOiSNPncXkltdBgYfYu/d2qgKcQA
-> ssh-ed25519 KQ5iUA /XRx2bwU4u47q0pmFFjnmopgeAFDRcdwVUgiZvFZBEU -> ssh-ed25519 KQ5iUA hvAKzXWUKMyNaJxWuk2Ath21FI0UJUWVO8GkVS01iTw
hb7OR5qsZ2ctqoi9F9yoJiOSCMIEFhsKTxmTzTlNcgs 8WGPzRRaxrVuX8gTe9+P//oM8Opk6tcVJbQ+WLTdzEg
-> ssh-ed25519 AKGkDw MDy7x7w+m12Un+WJzIjlT1sqFUqyMgvs5cUX96YtTBE -> ssh-ed25519 AKGkDw 3ALLobyiLBam2jGvDTnvQnFDKwqMu6Sms6VK6A9jCSg
4idv3M2g8lkjGTXiH3zxR3sORP3K6OijlCF2vTlGDs0 LA1XgPi4EvZ+RYKaYyYVMThEu+edYyQyOccfX7arCco
-> ssh-ed25519 0eS5+A GxaSMOtNOuri6nFhtEmPCUAYO7ULTRgfhoSEhwsQhTA -> ssh-ed25519 0eS5+A L+MOMKygaYRXXslO2pp7smRudxO3SFCU1Y2OXxbjyyQ
eFGFTZB2z4zBOp+yuU9ryvhNh25v5S5bT77+XYlZ3eo EScEV5/7m+HSNhvFYj1uOvKf/vTj/T5pSr62cWkEYyY
-> ssh-ed25519 9/4Prw 2dVb0418rDvJEJ8yYDm3+eofjwEA0r8tuloPN+VC01c -> ssh-ed25519 9/4Prw 1VFfT7FpfFEFfnx/Tf1VQYKvEbc+raAnveL7xckM+AM
uVjqjHdZCvfZJKZukaDT0m2SL1S0CMB/exuNeIEBlH4 oYZ2WuJ0BE5T/j25EACfB/cjLCP9IElCnKla6aZPLD4
-> ssh-ed25519 gAk3+Q 659Yfnz4QIdJCq1X3FxiDyL2F9QQEBSxyjnx+SCl3CI -> ssh-ed25519 gAk3+Q zhmxSdCJmIySnMINqbKxNjmVctS9eHX4rTKqC0z+xGc
VuGpJwysc8y3Mq/HrIJP5DY1DdMJC7QlXTlyoCaWbzw GSnqECoK+bj3aRWvQ2ALVV0VFznk7fSr77Vcv+oWpl0
-> ssh-ed25519 X6eGtQ hYe08q7Sofe8mdwVTCitTayJNbV9Tl9Bkt4RPexxMDU -> ssh-ed25519 X6eGtQ 5xUEtBKxwQLtlmz4Ne05pjUsxeXFRZEn3rIEnk71tXI
FhU5gPGYUi6DBMt2O1wY5uL25dyI3aGhXEFXfgyUgBQ fG2mfswiyhZB9J69Y91zo0YocbDnftd2lIkv0knbqys
-> ssh-ed25519 0ma8Cw z0Di7JjAJLIcQx2+B01JVBRbmh9fV1T0+Q6E8S+xGjw -> ssh-ed25519 0ma8Cw o+sHqr3FeOdpdrSKMCFl6M0YypkFUklOuOcdTuxzjFg
507pjrUEDf7r/DY0zC3gGj78uifvpe13BHKVtetSPFw s6veJeLpYv4XcHGv/fvHTDBV2LzN4lkkgMiw9r3Tmh0
-> ssh-ed25519 Tp0Z1Q PMwAaVX/1envqO+cf93hMvw7skIHIwDHizPpjn3zLWk -> cFiHfJ[~-grease U^| y&
sNGxgzKWwS29pTBnv8YVQwGm7WzH0LnYXfqYjwsJ+gw eE+uq9nid3cWH7UO/044x6hCr/ZBZUwRIQIMi7X0yFDf4We54/kRGdA
--- 7ziHLKL/XsD7aJ+uEbNNNwxEC05vAINt+E5+Lvhm7oE --- yja3ejJfODu7JOeNwFGq3l73whtWcDCBdqV3zM7R3Us
ÛÓ;íKª§ÐTc6L $ÁsôO[3ÔÅøUÉñçt6s a SŽnœÐ#jE^qhÖö5eɈQA²ÉþþŽ2ψI/ É kÞžþ,%de—lmJ_E9%"®G½î7ÈÓwŠrÍéøzjÿc@ÑÚ2µJM FSwƒéÖ…J´ÆŽ÷”Ý{~EÕÛ¦}}!-

Binary file not shown.

View File

@ -1,48 +1,50 @@
age-encryption.org/v1 age-encryption.org/v1
-> ssh-ed25519 ZgrTqA gwgbZfsmN/IZSoLT93ftwBDJ9FMFkumWuDYLAdR5mDw -> ssh-ed25519 ZgrTqA nxDhZDKcFwSoxR/i34N//ivTJDLC/11977XU4VmaWxg
wjVFV+RNqRUomklgh+/I+upUzOjIF7NbeHDG/ZfAkXU JEwXfBrRVtkOkrpmsU+Zk4YAIrxZkBbsTmUXOtOR6eo
-> ssh-ed25519 ZaBdSg vfpZjIfCwFXEkEUrErLcCSigL4Uqm0/NZkIyzMkJmC4 -> ssh-ed25519 ZaBdSg 22smm7JR4fwhhlb5sNo9Qrfyd70NZCDEQqQNrhfamzo
NgGeogehq3w0AUawo9blKKMrr1HfwSseUndNSvA0cDw aVwrulW5nWBqVLfB21A5wVdKYOpJq44venb3qXjpr+Y
-> ssh-ed25519 MHZylw 9gx87i2+xptkEFAq4brfSa28StOcKHrBrQ6YdPrEXVw -> ssh-ed25519 MHZylw eOjkoAZZjqMKZgCH+XOsdX7QfOAh23Qh7byqgWLvbEg
Wz0TkHL3865UNTalO5GLyla3eh5HO8CU1OpvmFnUz1Y 2HUuAPBYmMwfyAD/ZKoYkwknPWwvldHpfHrOc8BMHXs
-> ssh-ed25519 sIUg6g kXECNgiZ+7BenXVIvbioQwYb0Kni3uCAyHgRgbw11C4 -> ssh-ed25519 sIUg6g DTno5u3GShRGLl3O21bMAeworZSGPTHyawVkQUdOCX8
+ky0U9p0KaAu35zSOSNHXPmHFqdIf8BGAveLDMxpeTU 1EKEyC0g0Bzdut5kj5+YcTVW+QqWxXX0INKHOh1yQmY
-> ssh-ed25519 TnanwQ G5nA7iVSLYTx4TE5Xb5G/69JKJ9qm8xpYq3xi4A7ZDE -> ssh-ed25519 TnanwQ duKkCYjd1yIG4rRPWyN8KF7Ktc8yRa2t5urLGzOYqwA
yMW2ny1+QuPB+xzSRxxdYN5bjKZiJVY04qN6W+V1Y3E 72Q4lVsHbAAmxfxazFk1Uhd2WgY1tDtA3Bma81oyDQo
-> ssh-rsa gwJx0Q -> ssh-rsa gwJx0Q
IEv+jd2oOZskPWM/LWUb9ZLA8IzRfaBQTafgQyEzVoD7v8lbfpMKTI31ylxJQSvh U15JflZHy2YXgUL+YbLw21GGrjo9kUUGBIUy9zviyfRze2FsP/s64o4I5RcMHZQE
d+gutl9xgGtVDHXjGdNKbDHwAVzYaz3IbvP+Vje9jtSqH6A0AU+1OqXeRzI3ZAux fMeSZkZSECPW55EnyNXPP58B9afruHPttq0cA+8KhmvN92pTJFVW3B29NZvAmbg+
oBJlCEGZqSBspA8AhH3cv4ion0G6iC1wmqaIb9Nk/qnzfBvtE/cIpqErv19byVUj yw6k8m9CbTTNj1YAiPP4zoW5VA5bWB9vNsTC42RLN+mXvnk3jHhJiyQ77E0m6dsX
pZr5NviDXETV29Gz2HDyv3RsZ4wfJE/npebSu+ORakOH6PLRtnMpB4aKOensv31Y gT6JePlb8iOySx6i90/b6PuFB23i2QFnyBUsGcwhU4VPqPcNEoXZwpS9ibbQoXYW
UJQMTHNuJRgPdxgSI0P9W/LaCSMT5vuXR4ETz4vEqDNzcFm1ekqfY8821/AbOtlD Ce15tbkfjm7HffI8cnrnJh3HpO+3onoqfwJLSm7v1twGGN3neqJU31ywFPE5kvtA
Q2c0zr2C+ayGW5zwGp2XTQ J53Ii0JuEjqghm9GaspfTQ
-> ssh-ed25519 YFIoHA UMEeywWPiRXx07jalhLcS4/TmK+gwg8nWdtBpM/IJzI -> ssh-ed25519 YFIoHA 44F44WcZamqz8iYwS4HQhqT1zNdUZDCI+Zfq1zlpGjQ
9SDhcDfTgwRi7HJ5zL9i8jHL6i00oi6y/qaTzsjb6uc dyroggIjVoJCFayVjmp2zN7m6s9uDECkXUL8XJQ9uFk
-> ssh-ed25519 KQfiow furHqLazJ3qLEIod24dfGPfu6ie7zutEXDV0N2NGYDY -> ssh-ed25519 KQfiow /50omkmktdLNxaOHB3ImSrtL+wCtKQqVH8nGyo4Q8xE
Se5igVc1LJtobjLioH05RPtQfUh5jjYV/bRgU3RL4dY 90cGcqXOePnHjAhn262MeuMzn3odfKrgwsky1yE+6Hg
-> ssh-ed25519 kScIxg mBFDyzrNBg33LQAJMvlikmd7h0X9d7Eus/p86PF8mxU -> ssh-ed25519 kScIxg j/12yl3KUndaxmFovvXeWvNjDiS4gLmTu60h091vFCE
MCHgXOGu9AE83VulyxcPEwbfbiymqiZ9c6p3IqLzhak hscYo/JdGuH9jFiZl7qKP7nNwiBsTKwMgqLK1SLPXPM
-> ssh-ed25519 HzX1zw dAgBHAtVniUDV5W/MGrQX1cQh+P+cpHErnxCMn/b8A0 -> ssh-ed25519 HzX1zw /+sbKjdDKP7tzxD5Bi3KXLf/qKbIdXqkvgv5VVMtGgc
zx0RxAMo2b6fzjx1U2hw/wHjz8dRXHcM+e20dXRkN98 kv7Bv79YUyVy2MpMECI5+1Z/jz9hKG+guAB3joIEF94
-> ssh-ed25519 KQfiow NxL41InC5f7Za+/EIQT+z+vhzkkzQxOBRBqTe0J2U2c -> ssh-ed25519 KQfiow z+1XnwF0MvV1WoLMOm1y1SBFmMCuBs52bEHNOVWHrSI
t0IJoVJ9Ap6P4D4kCM+TGgU2oKhTEpeiFktAQxM+C54 AV1Desi4VRies/yqXcSjISdxPGvKn8aWYTfDFPMyzEY
-> ssh-ed25519 1o2X0w ++MXOZdgCeKxiKyQ6mAiVz1i4dXnpyFSuhSq5hG3vVM -> ssh-ed25519 1o2X0w q/W93yDVRDYcazyOIlf8jUBHSNng0GgPsqZA7r3Mn2U
KeMSC/Cb10lF2ZvdLS5JXRkOE6iEcLtju3I6YMRQoqU NtlRyyH4mbAnTAWBRpf5PL4vLyk2wSxAobSkYMBBX+A
-> ssh-ed25519 KQ5iUA +5L7eIEu1RGoVXxpd/nJHi1/DIF82YCKtzt71mhKqRc -> ssh-ed25519 KQ5iUA 0RLXvcC+cuMFXGgQQnCBJhWQU6+PglxxQaxlZSqVNE0
+La1804HzEBjkHeQdRGboNwIj8NarvZ/SJG3Ua4y+Vo 8WRPF58jm6m/gKubZgomqCZNpQoLA26fOzfY0Hqx3vI
-> ssh-ed25519 AKGkDw Ru9l2BXa/LUZCn5DpMVDh4ca7w1JU2thmChLOeY8Ii0 -> ssh-ed25519 AKGkDw Wi+UsCD95sykFp2c+5mGWGM1XgHxt7CAnSQR5vT8S2Y
GSua+XJoy3g9NNZ2qHstAbomR/3xKEAe6SOcn6g2Q/w TPk8gkZkmhdZnNiI1Wo1yRGkMgQdzf12dLJCDHISCjY
-> ssh-ed25519 0eS5+A e2prXUG804KhjGO+rg/eXrZUQM73HxQ/BnN1vsHbuQU -> ssh-ed25519 0eS5+A Ip2KcVBtziu8Gtgz0ekmbk3G4yB4EUjUCQcaqXbQcjs
nIANuBAF2Tk7hWT9HJJ4uvUrPbtUhsBW59eOkVnK5IY t2y53xf2mEHGxFaeONMXa3/t+zGDCdQKb6RQecYfkmY
-> ssh-ed25519 9/4Prw DOtRMtKN5Q1YFq8AFrH/37SJxaHoaZuTMa/JVzT2Bzk -> ssh-ed25519 9/4Prw zkAdxlDmai9tSFu+a6a3jhoUnyxzZUpCiLgAyJ85uwY
j+mawty5y3Ox2Nzp3TncHbR/rMmcmIQD5EfezhUUtWg u+z5fSEzJtPvz7iEFFng4cn0WQJuMYO5zFsBCnXvXvs
-> ssh-ed25519 gAk3+Q mZVlRxtH9jV7N6/aoJ1je+jkxuF7sffcGsLiYwjReHw -> ssh-ed25519 gAk3+Q 6S8D1fDXLKPc9MvrnHbhMLqoY8f1W+yy9LrZq2345lY
XOQKhZ60vBfHaO7u9Fkwy40po/jh/Y4/Yj/D4gRO0k0 oSkGUfVxlqPnqS4sHqiywVg/cSu8rDiosw8KbXtlhn8
-> ssh-ed25519 X6eGtQ 8+iFJD1esMa/3yuKAx8fZBEJ2SxLdrzXhqqkEicRvgQ -> ssh-ed25519 X6eGtQ kCtmcfUdTp8vJ8rBFDDJeJmk7s/uhlRuvrk9fhvQzw4
R9jJ7vDcxA/sOSF329GW8d18Jzdwot/BpFEl/knraSE lKwwGc+86muQv8dZ0BuivDHHR2vX/hXuhqDHNgq+/nA
-> ssh-ed25519 0ma8Cw LgbM+4liQS3j9acMcFnnp9gi4Gzkq6Xtmrm4KQoO5hU -> ssh-ed25519 0ma8Cw NAFySfIt7dQ3kTL73/7E1WzpOlcyd7PU1DyMsYWGnl4
TX50NCZoZpH4SzS7ZfkDbEcGO/A3dzRJXvtDqxjzsuk JTZh0eM06/IOC8HNRxn5gF3KAlnBmmEUpxv5UFjuwks
-> ssh-ed25519 Tp0Z1Q yHfAA3IRIM3rDcPNoV9qh1RU7g6LX9aelELZGXVt7Wc -> ZhDG9-grease > ~YTLl
QIlWb0xzr+RpVwcyBqr8oRR4WrOz9st4fFSKNCEXCWE MzCy45d4My1EJc2k/SzhXa2v9geyu45HhXth4R/CMejeVSk+NuTfB1UhSp6iCErU
--- ztKYvZNf3AP9x0CiM2gtLQEIRHtkwAEgaBRHWJSZuKc eK4qPQoPCx2z1ihs5fQCC+lf55jE88+tP9aDqYPnTzXVPPHMNpDYLQYAow
@6˜Û34p¸oqŠDvÍub9}`I íÉž[Y +Ó&õ&n --- dVpM8R96RIKRuG6yQ672A543LxhU9ttuiSrbG4fcsvQ
D4'Vp<56>
Zþx YA`Ñx¹ä :àS5u¦W[”¡uŒ á—ÇnÝ#j

Binary file not shown.

View File

@ -1,48 +0,0 @@
age-encryption.org/v1
-> ssh-ed25519 ZgrTqA l1KhMBYmv+TZzBET8kptlZsQqzk3PWm4KA1YbQ7pLDw
XQdF+ZjcWyWs1oprvb5J5GWL9qhQ2oyTiAHU580I9Us
-> ssh-ed25519 ZaBdSg HpBQZKCjSZLWOgUhlZNBSQdEh4VqHyIRsnWeqOoNu1w
olbfsFPUKa6n64WxIjqSfzEN0Sv69rkMem7l4BSdRO0
-> ssh-ed25519 MHZylw i3v/ahcgJ0eNpv+eyLcLW5HFbJgDxmILPwRIfYbfYSo
gNFYiAJFaeTE2psIhpAOEbdh8qpNPkHhQ+JimwLWHMU
-> ssh-ed25519 sIUg6g qhpWT0ZYGs7L9phprKuuTc5x3ONa5HxfJrml9hZXCDA
bSUNBSgE4THO24IldTR6UDl1nibM6wJVhfQDNgXDHoQ
-> ssh-ed25519 TnanwQ oIiKhCPi2Q6Aie4hdnMM+GD0X1AP+RRYX3MhPZr6mwg
+eQAf9brHo6aFjChm0AhUcF9taFNqrwIITVanvAJBZI
-> ssh-rsa gwJx0Q
bPnrY1qe+cJIrAL66CjfIoHrwpyIsJ3hxMnjecNpbYwj0VD2FDy8oLknXvUs+Qr7
9AVJXYnkJ2qP/KSxZe0Kq4yvuIVu30CcibMWdA+FbDSC+BGhkFuVMbn87ewujBZO
yckIiiW0Z26mmBWTc2wOxJvQBsvNmEzJqt75g1SKjZYd4yD2ZHybLZkd5S2CRNnE
P+9UZstX+ZGQT7N4xCaYi1nBn3ZyDx6QfUtWPK+W+ZBxCmeCWSKA6GdPhG3Xy/sD
7Emq3VQpFwByBzgno7u3XzhY+RgGDDWz9YnvieUPT7VloXnjD+2+CqiS5zYj4ueM
5VHE4pYUTczXWBe2kurwpg
-> ssh-ed25519 YFIoHA zgTafEG44X/fXwXLIlogjs45fAjoEMtWwOH1bJiUXA0
vp/8r42Zr97CVwG5K9F8be5OUy9lAjqMC/86mgsHyok
-> ssh-ed25519 KQfiow 0mtQJsqu9ilrlYIcxEURoPR4v26ovNb+xK3HsA67J3k
sUGJ2uJXmDCzjWVGvD+kQq/k1Kjh1GWxalx66PdbRLo
-> ssh-ed25519 kScIxg G/D+dmQhzFH8baIl1/LEcFm6Srag72DfUwMi2lU4FSI
lUm3v86TvpXOCEOD7x2c6OQfglVlNpz3RJQKgLos4A0
-> ssh-ed25519 HzX1zw mOWnNPTDS2uWUhaBDh5W20sa6L8Sv82B/i5fyYtBg2I
ml3ypIN6Hk9ZLWAHgeeX9Fl69cVo0quKKnIOzf0gtiA
-> ssh-ed25519 KQfiow +KbirvF1s4PLCPVko1UuvGkPUWT4ysU7IURr61WBYFI
EIEFzIrqBu0eF2qsJ0sNYWVLdxUVWhER05C//iU8Hik
-> ssh-ed25519 1o2X0w SEi4GVg7eYsP4H5x+FzMWaHzQ10qYuD63DtlNbdtEjg
hvVJMGz0mrfKYua9kfc+QfZgAqAapKlRoxmJQvX076g
-> ssh-ed25519 KQ5iUA DH/T6YbQufZDEejYJwyTvxeR2dn/CaTm1i68Rh03yyU
u3sMfE0YupucU58UVrCkEsVKPWCvxEfDDCvRhON0J+4
-> ssh-ed25519 AKGkDw N/s4jeBT7J8oTXqiJhfNRzUuxR9PTyGApTqCjERFH10
oxEicNoou7wTRuLra2lNHUGp6ZAVNMAV88X/UTdI16M
-> ssh-ed25519 0eS5+A mJLNn95SfVF6fBBmPJHBxeGH74+hCbHVC3CHN3bcr1c
mVc2Rsz6tXZlPGSMNNmmo4sbPN36we7YVy17mXkwKas
-> ssh-ed25519 9/4Prw moIGBpA5A/k4RqRFbiESz4LjB57/e7CV4Usp0kJ+o1Q
MCDzUd0ZM8jEFPkcHaYXcCBeJT7L6vkqfSlpZQ/sG5o
-> ssh-ed25519 gAk3+Q DkXPTEBi/E6aZkDQeeXPMs/rhg+ZyipHQ5PfbrutMSk
lOlrZmHIgLzUkMUYjWwVs7c3oR3xA3PEevT41nXkKcs
-> ssh-ed25519 X6eGtQ FnKi617TVTcL4xNmWCiYdFZXqN46WaoGS9XUsR4cvSY
STQh6M7mB15fSvndYx7wei1M/NLuKx7P1IGfjfzW+VY
-> ssh-ed25519 0ma8Cw jNGzFMl5ln7nhFcmZkzLcMDlCliMTP0d9FI0pA0PaDQ
sgMfIzoC4fi2aMvtvxNpifw2pXeJJtB/rI1Js8qZmlM
-> ssh-ed25519 Tp0Z1Q 4H03FYzl4l7Qy96uo+WxUcpQiWWXdEPva8nPcIPg71w
pza0c3a9aTnXFs/MT3wkORn6WUKQmxW/xqAaorZHmSA
--- qteXhOgvLyIakAwNEcpK5Mtk0aERS+2hNZFT+bmE/HU
óZ¶ïiCG(kà÷faÆ?<3F>×ÿk<02>óþì}´÷á ÒU Ûd6*g]ëšÌºŸS!>`Ó92

Some files were not shown because too many files have changed in this diff Show More