Compare commits
6 commits
fa59ebd06a
...
ba09656909
| Author | SHA1 | Date | |
|---|---|---|---|
| ba09656909 | |||
| 2684ec9b75 | |||
| dab6a5127a | |||
| 2d95b72a49 | |||
| eb3755f072 | |||
| a86fa5c141 |
23 changed files with 206 additions and 214 deletions
|
|
@ -1,13 +1,8 @@
|
|||
{ ... }: {
|
||||
imports = [
|
||||
./hardware.nix
|
||||
./disko.nix
|
||||
./nvr.nix
|
||||
];
|
||||
|
||||
networking.hostName = "kameramann";
|
||||
|
||||
networking.interfaces.ens18.useDHCP = true;
|
||||
|
||||
swapDevices = [{ device = "/swapfile"; size = 4096; }];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,35 +0,0 @@
|
|||
{ ... }: {
|
||||
disko.devices = {
|
||||
disk = {
|
||||
main = {
|
||||
type = "disk";
|
||||
# Proxmox VirtIO SCSI (scsi0) → /dev/sda
|
||||
# Proxmox VirtIO Block (virtio0) → /dev/vda
|
||||
device = "/dev/sda";
|
||||
content = {
|
||||
type = "gpt";
|
||||
partitions = {
|
||||
ESP = {
|
||||
size = "512M";
|
||||
type = "EF00";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "vfat";
|
||||
mountpoint = "/boot";
|
||||
mountOptions = [ "umask=0077" ];
|
||||
};
|
||||
};
|
||||
root = {
|
||||
size = "100%";
|
||||
content = {
|
||||
type = "filesystem";
|
||||
format = "ext4";
|
||||
mountpoint = "/";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,16 +1,21 @@
|
|||
{ pkgs, ... }: {
|
||||
services.qemuGuest.enable = true;
|
||||
boot.loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
{ lib, modulesPath, pkgs, ... }:
|
||||
{
|
||||
imports = [ (modulesPath + "/virtualisation/proxmox-lxc.nix") ];
|
||||
|
||||
nix.settings.sandbox = false;
|
||||
|
||||
proxmoxLXC = {
|
||||
manageNetwork = false;
|
||||
privileged = true;
|
||||
};
|
||||
|
||||
services.fstrim.enable = false;
|
||||
|
||||
services.openssh.settings = {
|
||||
PermitRootLogin = lib.mkForce "yes";
|
||||
PasswordAuthentication = true;
|
||||
PermitEmptyPasswords = "yes";
|
||||
};
|
||||
boot.initrd.availableKernelModules = [
|
||||
"virtio_pci"
|
||||
"virtio_scsi" # use "virtio_blk" instead if disk is /dev/vda
|
||||
"ahci"
|
||||
"sd_mod"
|
||||
"i915"
|
||||
];
|
||||
|
||||
environment.systemPackages = [ pkgs.intel-gpu-tools pkgs.libva-utils ];
|
||||
|
||||
|
|
@ -19,4 +24,5 @@
|
|||
enable = true;
|
||||
extraPackages = [ pkgs.intel-media-driver pkgs.intel-compute-runtime ];
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, ... }:
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
cameras = {
|
||||
"ulfried" = {
|
||||
|
|
@ -14,7 +14,7 @@ let
|
|||
"gnisbert" = { };
|
||||
"taubis" = {
|
||||
frigate = {
|
||||
detect.enabled = true;
|
||||
detect.enabled = false;
|
||||
record = {
|
||||
enabled = true;
|
||||
continuous.days = 1;
|
||||
|
|
@ -35,8 +35,7 @@ let
|
|||
};
|
||||
};
|
||||
|
||||
# Uppercase camera name for use as systemd credential / env var name
|
||||
varName = name: lib.toUpper (lib.replaceStrings [ "-" ] [ "_" ] name);
|
||||
varName = name: "FRIGATE_" + lib.toUpper (lib.replaceStrings [ "-" ] [ "_" ] name);
|
||||
|
||||
go2rtcCameraStreams =
|
||||
name: cam:
|
||||
|
|
@ -45,11 +44,11 @@ let
|
|||
in
|
||||
{
|
||||
"${name}" = [
|
||||
"\${${varName name}_URL}"
|
||||
"{${varName name}_URL}"
|
||||
"ffmpeg:${name}#audio=opus#audio=aac${video}"
|
||||
];
|
||||
"${name}_sub" = [
|
||||
"\${${varName name}_SUB_URL}"
|
||||
"{${varName name}_SUB_URL}"
|
||||
"ffmpeg:${name}_sub#audio=opus#audio=aac${video}"
|
||||
];
|
||||
};
|
||||
|
|
@ -62,91 +61,121 @@ let
|
|||
}
|
||||
{
|
||||
path = "rtsp://127.0.0.1:8554/${name}_sub?timeout=30";
|
||||
input_args = "preset-rtsp-generic";
|
||||
roles = [
|
||||
"detect"
|
||||
"audio"
|
||||
];
|
||||
input_args = "preset-rtsp-restream";
|
||||
roles = [ "detect" "audio" ];
|
||||
}
|
||||
];
|
||||
|
||||
# Only cameras with a frigate key get a frigate camera entry
|
||||
frigCameras = lib.filterAttrs (_: cam: cam ? frigate) cameras;
|
||||
in
|
||||
{
|
||||
age.secrets = lib.mkMerge (
|
||||
lib.mapAttrsToList (name: _: {
|
||||
"camera-${name}-url".file = ../../secrets/camera-${name}-url.age;
|
||||
"camera-${name}-sub-url".file = ../../secrets/camera-${name}-sub-url.age;
|
||||
}) cameras
|
||||
);
|
||||
|
||||
systemd.services.go2rtc.serviceConfig.LoadCredential = lib.concatMap (name: [
|
||||
"${varName name}_URL:${config.age.secrets."camera-${name}-url".path}"
|
||||
"${varName name}_SUB_URL:${config.age.secrets."camera-${name}-sub-url".path}"
|
||||
]) (lib.attrNames cameras);
|
||||
|
||||
services.go2rtc = {
|
||||
enable = true;
|
||||
settings = {
|
||||
frigateConfig = {
|
||||
auth.enabled = false;
|
||||
proxy.default_role = "admin";
|
||||
go2rtc = {
|
||||
rtsp.listen = ":8554";
|
||||
webrtc.listen = ":8555";
|
||||
streams = lib.foldl' lib.mergeAttrs { } (lib.mapAttrsToList go2rtcCameraStreams cameras);
|
||||
};
|
||||
mqtt = {
|
||||
enabled = true;
|
||||
host = "192.168.178.33";
|
||||
user = "frigate";
|
||||
password = "frigate";
|
||||
};
|
||||
ffmpeg.hwaccel_args = "preset-vaapi";
|
||||
detectors.ov_0 = {
|
||||
type = "openvino";
|
||||
device = "GPU";
|
||||
};
|
||||
model = {
|
||||
model_type = "yolo-generic";
|
||||
width = 320;
|
||||
height = 320;
|
||||
input_tensor = "nchw";
|
||||
input_dtype = "float";
|
||||
path = "/config/model_cache/yolov9-t-320.onnx";
|
||||
labelmap_path = "/labelmap/coco-80.txt";
|
||||
};
|
||||
detect.enabled = true;
|
||||
snapshots.enabled = true;
|
||||
semantic_search = { enabled = false; model_size = "small"; };
|
||||
face_recognition = { enabled = true; model_size = "large"; };
|
||||
lpr.enabled = false;
|
||||
objects.track = [ "person" "bird" "car" ];
|
||||
telemetry.stats.intel_gpu_device = "sys:/sys/devices/pci0000:00/0000:00:02.0";
|
||||
classification.bird.enabled = true;
|
||||
cameras = lib.mapAttrs (
|
||||
name: cam: cam.frigate // { ffmpeg.inputs = frigateInputs name; }
|
||||
) frigCameras;
|
||||
};
|
||||
|
||||
services.frigate = {
|
||||
enable = true;
|
||||
vaapiDriver = "iHD";
|
||||
hostname = "kameramann.lan.baubs.net";
|
||||
settings = {
|
||||
auth.enabled = false;
|
||||
go2rtc.streams = lib.foldl' lib.mergeAttrs { } (
|
||||
lib.mapAttrsToList (name: _: {
|
||||
"${name}" = [ ];
|
||||
"${name}_sub" = [ ];
|
||||
}) cameras
|
||||
);
|
||||
mqtt = {
|
||||
enabled = true;
|
||||
host = "192.168.178.33";
|
||||
user = "frigate";
|
||||
password = "frigate";
|
||||
};
|
||||
ffmpeg.hwaccel_args = "preset-vaapi";
|
||||
detectors.ov_0 = {
|
||||
type = "openvino";
|
||||
device = "GPU";
|
||||
};
|
||||
model = {
|
||||
model_type = "yolo-generic";
|
||||
width = 320;
|
||||
height = 320;
|
||||
input_tensor = "nchw";
|
||||
input_dtype = "float";
|
||||
path = "${./models/yolov9-t-320.onnx}";
|
||||
labelmap_path = "${./models/coco-80.txt}";
|
||||
};
|
||||
detect.enabled = true;
|
||||
objects.track = [
|
||||
"person"
|
||||
"bird"
|
||||
"car"
|
||||
configFile = (pkgs.formats.yaml { }).generate "frigate-config.yml" frigateConfig;
|
||||
in
|
||||
{
|
||||
age.secrets = lib.mkMerge (
|
||||
lib.mapAttrsToList (name: _: {
|
||||
"camera-${name}-url".file = ../../secrets/camera-${name}-url.age;
|
||||
"camera-${name}-sub-url".file = ../../secrets/camera-${name}-sub-url.age;
|
||||
}) cameras
|
||||
);
|
||||
|
||||
# Assemble env file from individual agenix secrets for the container
|
||||
systemd.services.frigate-env = {
|
||||
description = "Generate Frigate environment file from secrets";
|
||||
before = [ "podman-frigate.service" ];
|
||||
requiredBy = [ "podman-frigate.service" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
umask 077
|
||||
{
|
||||
${lib.concatMapStringsSep "\n" (name: ''
|
||||
printf '%s=%s\n' "${varName name}_URL" "$(cat ${config.age.secrets."camera-${name}-url".path})"
|
||||
printf '%s=%s\n' "${varName name}_SUB_URL" "$(cat ${config.age.secrets."camera-${name}-sub-url".path})"
|
||||
'') (lib.attrNames cameras)}
|
||||
} > /run/frigate-env
|
||||
'';
|
||||
};
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/frigate 0755 root root -"
|
||||
"d /var/lib/frigate-media 0755 root root -"
|
||||
];
|
||||
|
||||
virtualisation.podman.enable = true;
|
||||
virtualisation.oci-containers = {
|
||||
backend = "podman";
|
||||
containers.frigate = {
|
||||
image = "ghcr.io/blakeblackshear/frigate:stable";
|
||||
autoStart = true;
|
||||
volumes = [
|
||||
"/var/lib/frigate:/config"
|
||||
"${configFile}:/config/config.yml:ro"
|
||||
"${./models/yolov9-t-320.onnx}:/config/model_cache/yolov9-t-320.onnx:ro"
|
||||
"${./models/coco-80.txt}:/labelmap/coco-80.txt:ro"
|
||||
"/var/lib/frigate-media:/media/frigate"
|
||||
];
|
||||
environment.LIBVA_DRIVER_NAME = "iHD";
|
||||
environmentFiles = [ /run/frigate-env ];
|
||||
ports = [
|
||||
"5000:5000"
|
||||
#"8971:8971"
|
||||
"1984:1984"
|
||||
"8554:8554"
|
||||
"8555:8555/tcp"
|
||||
"8555:8555/udp"
|
||||
];
|
||||
extraOptions = [
|
||||
"--shm-size=512m"
|
||||
"--mount=type=tmpfs,target=/tmp/cache,tmpfs-size=1000000000"
|
||||
"--device=/dev/dri/renderD128:/dev/dri/renderD128"
|
||||
"--cap-add=CAP_PERFMON"
|
||||
];
|
||||
telemetry.stats.intel_gpu_device = "sys:/sys/devices/pci0000:00/0000:00:02.0";
|
||||
classification.bird.enabled = true;
|
||||
cameras = lib.mapAttrs (
|
||||
name: cam: cam.frigate // { ffmpeg.inputs = frigateInputs name; }
|
||||
) frigCameras;
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = [
|
||||
5000
|
||||
1984
|
||||
80
|
||||
8555
|
||||
8554
|
||||
];
|
||||
networking.firewall.allowedTCPPorts = [ 5000 1984 8554 8555 ];
|
||||
networking.firewall.allowedUDPPorts = [ 8555 8554 ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg K23laRBk9Jvf6Uo9ofAk2gCPp7EppKPVnomDWE+mJ2s
|
||||
Z6r7vtDMPx0hSXxqOwQHwHeQzE/97hhy+KPBRUmkloQ
|
||||
-> ssh-ed25519 psfYGg 5jNbtluxAGBo2H2k2zoRUjbtAxvDvtm8i9UNNTNAuB8
|
||||
d2z/qob65J5AVhxDt35fn05+pkeNHDrIEfzCV8uGvwA
|
||||
--- EOpZwlsfsISDz9J/4735DF21LMMiLmIc4sE7F3wAlHI
|
||||
^Æ{e€NÂüÞ¨šŒ§Ï,ö´§3áe‚)¼ý:]@Ù×"´<>ÔÀ€ß7¢»O
3©ôjÂØ#Yq£i£ÝY„ÜâQç)k^;Ï<}èƒ6ñdÚC$×ÍfqPy_V…»:3þ©
|
||||
-> ssh-ed25519 hC2TMg 4we8pxrWxgojBXIk1RQvhRZxUI3Upsn0ZlcFr811HEk
|
||||
U31oa9jVcRrTDEIF5hTTfv2XI6MJKG6gr3cB+eZ7x+c
|
||||
-> ssh-ed25519 9AVdVQ eOcDDEQiH5AkOMwyWMRED1EkxnohA6EwP08W5nGL32Y
|
||||
iztcFRHNRJctdDHVFKPPXQQBfujHVao7pOi/DQQAurY
|
||||
--- G2s01Plk3CY5Mg4lhvcePN38IsGV9pdmxsjZ3xjJFIo
|
||||
õ6%Ô{—TIfQ½¯g´µ•)n”]ß á¹_NŸ] ‰V…–´õØ?±CÜxÅú©•½„èÈ’„cV¤û˜Û° [SÍ4 ÒÌÛ£O’/Ñ=÷ù¸l@*{ù« YÅóËy~¿
|
||||
Binary file not shown.
Binary file not shown.
|
|
@ -1,8 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg h329e0tkuyIHY1qDoj+bL6Bb1rXQ/xfIzIdMZ1QwSlI
|
||||
twGdpKH4ZbOtvBSE6VmhYgBd77ALBoaubHQFPq2/MIQ
|
||||
-> ssh-ed25519 psfYGg +U9wzhqrx7eoIrYU3gdQE4Cj+cjwmgiI+SyoDnB6ZVc
|
||||
Y03vO9kY8tBT/ijFL1R7xICkF2a0OwYnrQu5R8xpPMw
|
||||
--- b+Ans7uEkZZoigbu3h9tW+lH9qpLAfrtnjUHq/GfeiI
|
||||
¬“ÄšõÊuê«ÓçéNcB:<3A>ÙŒg\²§y£zªsÃXjònC<6E>úR«H¦VýÌ5
ícv„Ôrê’]ØŸ³No·Eµ<45>ÁvñÆ^uLä8È•G(Älo
|
||||
Ü
|
||||
-> ssh-ed25519 hC2TMg gfYjuxvb3pgh8BFaPuugCTC4X+jH4iuaTn/tlySHFgY
|
||||
Gk8VkjCKdKzlODmrCHqFodNQ8jVsGzZbtru5maH0ZwA
|
||||
-> ssh-ed25519 9AVdVQ 5hgDLYchlEFlxmyHoNuW65sMzJudRR9Z+u00NWKA93Q
|
||||
lhWMffnVKfCkbl0Tnx4vhI4CF1B1FygWr+9ThyAHoGI
|
||||
--- l1LP2r07DQckiBHRkfoPiOienDa/rC0PlORm+fZt++U
|
||||
“cͬóÍÆÇá<àšUKÿäøPB²Óuž—:ËâæîIЪ‹ÿvÿ¬lÈsh<19>¯<EFBFBD>©ƒÜ<C692>Hn¯Ô0JÖ‘w™ÌPšðw9ªƒbÊUôH'dÐtéLEÝÉtHû›€
|
||||
Binary file not shown.
Binary file not shown.
|
|
@ -1,9 +1,8 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg hQ9We+2gIJfdmnP5iTiQVt0Lz5tXJpjgQnyI5eEnHGY
|
||||
rffB6DKI01Rwc4WchxN8uSYofaiWufAy6OLXwaeAdCk
|
||||
-> ssh-ed25519 psfYGg 6TJ5VeXmU/W7LuIS+6ud/V0LpiUm+xwQJppQSHX+NnM
|
||||
8p+BkvGGIcXe8jytEcr8+rfE1r9I/gg9Kur8yRYssRk
|
||||
--- m1eFeYo8bI107h4muwA4TgHaLrdNiuw2YpKOuyU8wNs
|
||||
öÜC4™Ñv8aµªÍß«Íà[ë¼ö@5\\öi!†ÉÁÚGÕ²
|
||||
º-Iý;uB¡ ti€ âd0¨>ެæàÂò‹uôýlù,óŽ<C3B3>Æü¡‚w:J¶Ž
|
||||
èD~ÎÈÕB~<7E>Á
|
||||
-> ssh-ed25519 hC2TMg tOGEXhEGm6d+oLDrey7d/9MBz95xXZopqA/pL05wKy0
|
||||
S4Zk53Zwg2XYrA/zqX0lmK5ABtKNp/IiVKZjStxisWQ
|
||||
-> ssh-ed25519 9AVdVQ Z07v6yFGdfiKhiUgbAZVscKcfGajzQAWt10QeqJAI1g
|
||||
pGFJYdj0CUIn/wmvhVpgvaC5hyKOBiLwrZKrdnJJlog
|
||||
--- 1QAqRe6ae2KhtqRBA8dBU2Ig9GgUDAMUHJoYylGLWBc
|
||||
ïªæ-ñšÐÖ
|
||||
E|4
,|¡ÐZ¥S—âcüDªÎ[ ‚rEÅl*DÜ÷ ¹5·æ}“Ú{쨜ZëF_ZÓ^° ®Ê†Á ÝlÆb¯8Dë’Ÿ9˜5ïã(Ü?Ø
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg kiwLTnSCnEbIWlw2j1SZ7aAQsqFipJDqJCBCyHT5p1g
|
||||
eI3p6oADMssBAIndqjmSXbeJROtBHETfF8W3IvFRg/c
|
||||
-> ssh-ed25519 psfYGg B7cdkEzmyrkeM7cTnoC8SjTaV1pWuAXOXiGYSJH9gxI
|
||||
kFeERXxWDyOjhN+jNGOXWy3m6WY+S5+s20hzgrF5qkI
|
||||
--- FPWKykTSfx4XH7tsnhREG0HC9NcgCXJjt77TQ3Sdxk0
|
||||
Qď÷ţ-®ľľ´č ň‘yŕ6«M]”Ő|±ÓIpľ2˛_“w†îBŁ|Ň©y–i/áuzwWđËýfŃDkY»8602ş:ĐBµľý7e…A”FAď
|
||||
ě˝đ)9ĘőŹôöô
|
||||
-> ssh-ed25519 hC2TMg DRZaz0y4F+Ot/JZGksYvvqkJZGXhfe4dqQA6OZkiPCc
|
||||
lrZuE4SCJ9eKV+HgApUJvbxrfwL0jnzVnzMWzbOIg8I
|
||||
-> ssh-ed25519 9AVdVQ maHML3K/9CulRq+K0DITSzhLt/eBbPs2rfxqOaefx1w
|
||||
Cubrab4WCDp/MgyKjKEdLAGEqi507wDI450GxWN0KBw
|
||||
--- 45uDj8rqOmpyduRV2GKL/stOf9teh604Mo9ZS/rcqI8
|
||||
‡# ÃìOF’Ô¯f=åóOUÚºÎeõ†mÒÑZeìà ‡ ~J´£Ý³Et×às;„a'£zœ¹¢
|
||||
ÕÒÁ‡uy¨N1ægøª;(Ö7ÍÎcôK‰Ÿ–ߨ;bã
|
||||
|
|
@ -3,7 +3,7 @@ let
|
|||
users = [ jbruhn ];
|
||||
|
||||
telefonmann = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEwgqWVjNOgBygI1uaG8P6wQlfr91A+FJS/EHYZbYWlX";
|
||||
kameramann = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMkXAM24G3s7EO6eQbwC85Rkb3OhrGZtLZRQMqut9IB5";
|
||||
kameramann = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEfgDpNz95SbbBHYM8zSGCh1pyb/2quR6Oy8xyWFkl0n";
|
||||
systems = [ telefonmann kameramann ];
|
||||
in
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg aTDzgRT6xEL9BaIhqfpEgQKjGPfahKSHh3uYOm7n32g
|
||||
rrTgEzAxcyWeC9Qwrw/Tp1GsE902mmGcs8/rKbflobs
|
||||
-> ssh-ed25519 Gfi4hQ 5qBnv/8OonFL8JgrgfIsi254IKX5q6oVV8/4epFlNEI
|
||||
nNe7V6St3VLUJ1xdK8iJBROia7CAQfMaGgGUiv++fns
|
||||
--- qo99nBZJS8fqU+vfdxg5CME+HZdTrWlga0hgEQqqUTM
|
||||
\j€ÃÜSÁBÚhòºù[²\áH#DbbÕhšŽ-¢ìï]ŠS–~^°Eb{;º'‘æ.´ …€
|
||||
-> ssh-ed25519 hC2TMg yATZJHK5AEN6h8IbCEv0z/cRvLWTtsE32NCK2qVSLSg
|
||||
X+nfSXveDvPA6t90kkw0pz4vCrbAy713TdgwkWlk2Rw
|
||||
-> ssh-ed25519 Gfi4hQ Dphc5VIi5O6DF2Ct3FxRSxz+Si1ikZFzALAkfAXaYR0
|
||||
yeIVhpfyCSWWkBCaev5oCy/iqpx21Jr7rLDbx6d6hPc
|
||||
--- bvtu/BU18oJ2/KnHJEtLDIv92hI9TEjSa/wEVm06xo8
|
||||
ó Wh’åÂcI(‰7ïšx¿7wuÄž½$ë(I·/¾Ø]bRÙƒ÷9ÓÒ²Ågú)åÚ‘v
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg cV6nDhAKb7tWgyx4nKFT2tYnlQJzLszqnQVoHiye7lw
|
||||
oGMbfNIBSFVmts2IeCTBgDVlHDjqgIpNmmwjFXP/XNo
|
||||
-> ssh-ed25519 Gfi4hQ iEwAaUJd1gnYhsbi6LutKk/KHr3YripvY5CUfV6StRA
|
||||
GffKWdz87M1XRYIsImXsx0Rpxz0O6113rClVpNZFmqs
|
||||
--- li/YIWk6iDAtMYCNf1kFq46i0jpy5bgI80t98bRqGFQ
|
||||
ÛOÚDø(Ò¢Ãñ».¦ÊšÔ݉iµu.÷#>Çès6$dbJ€"ä߆ÎOçv
|
||||
-> ssh-ed25519 hC2TMg o7MYtPe6/giPT/Czs0IRmLh3sBXMsNqsTcwgABgKeUA
|
||||
KVXT1NVCRiCPEwnDk79D0+oqjJ2DzJoH5dcbhS4X8ig
|
||||
-> ssh-ed25519 Gfi4hQ qRTjNZWOjIczygkBrpAHxh7fQmf+VwVfY+OuYyqe+js
|
||||
Ido9gOE4x2+oasGwtXZR1E6mlqXuto3gQEJpXbZeD+Y
|
||||
--- rmKNWi4be93IKtwEt8mW3PPg4Sk55iHKGaMFdo2hJrw
|
||||
¹¯ôá=põê5B4âü:öÀ›z²1Á_ÎÃP·m<C2B7>ÏŒ#꜖VNMûÉ
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg CSy6l/EdpaJZhQKFBV/P1OEy7OfewLrcV+xxBFVoPHQ
|
||||
ZceDzPQH8Z5mu3xuCcOdM6hiP+yD9LtWyqVRBzT08oU
|
||||
-> ssh-ed25519 Gfi4hQ co95lRFjdU3uakIPvS8Mj7aGhYamlouyj/2cGZJ8o3Y
|
||||
SvHzNxzHJbHMUmJENu934Wuy27s8yotCa+yqZngTr6s
|
||||
--- FIIm6l+HiK2Eh4Tkmr08rZhhFtE+x5hUHM9TWgP0BPQ
|
||||
*Où>þ<18>E‰Þ
€TÇ'£×¿©˜½²=‡’ø8¡—Tâ
|
||||
-> ssh-ed25519 hC2TMg iGQpGRxYWXuWJQeUV3bhBvpO2nZSeop9IQ8CgdW8ynM
|
||||
YFjTrTRGds64AChKTyVI4XSRU0KaND6YtSyORkhh+PI
|
||||
-> ssh-ed25519 Gfi4hQ wE8MQjCqGjvFQ6+XJyVzpu41v5xS6pfOpIXrzPw3qnE
|
||||
0r/7BKqJclJRe4EQN3JZvw8FH2WNXRE06Dn9NRBmAhg
|
||||
--- 73Gk0CoWJXK2AuiXOwKvt/c8GgGw+DafNksdE6cBa44
|
||||
X{üøÊÂ(äþW•ÀópHk{QjEŠÅvÕ²Ž<C2B2>ß!ò©…”âè²ç"
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg ZXCCEKHvyj3V/dGDNgMZNxrcu3Kpqk6T/KcE9KvI60g
|
||||
X8EoTT5COPZUjJ6VvQLZDzZs63K/RyIZanFQx5USFrw
|
||||
-> ssh-ed25519 Gfi4hQ riBFzxyTj4ph6tpL6mC+2OoCnJFTxxnsPUbX6BrF8lU
|
||||
BuhSoMAroN+YkPxziSMUQtmJrcOfUlfqn9bgfkpbJxo
|
||||
--- IQA291DTeWEMPkmDXjHzSZ6gg7mUu19laesubfmG1to
|
||||
ÜÄCùàdcW<63>òô>/e÷€Qå•M|)–D…I>×€9¢Vå
|
||||
ÑMNj¨¿E{
|
||||
-> ssh-ed25519 hC2TMg JIc2Y0jvzXdztzCirPS1AUVYxBxRYwSeCEf3CQmrRns
|
||||
Phs/xoioYruXoWWOxPDjEwQidIWnIOsmijWgAJbk624
|
||||
-> ssh-ed25519 Gfi4hQ mOGEHxgdWmeqghBHbvj5r+ENMTFewu6GdlbjeryEURw
|
||||
XP/3vVltwSqgJBF4MnyjDzICsB1ajkCQ+4FmjYId9S8
|
||||
--- /5KN6s4iBJtMZFY5DTmvCExoXX6BDN8YMXqPIb0BkiU
|
||||
ª£¹<µ4T|gÊ´öšÈZa"¤mUTÑy‚õ/U—ÕTù£ùï'Ö²—‚=<3D>
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg bbVG5NDvMUfqP5bAjKakl3XtsAyv4Mo1xqsshyqgsyU
|
||||
Y06IQn9fX37uPanqUSr8h9GZhlkFNhX5XQCdSJZtAJE
|
||||
-> ssh-ed25519 Gfi4hQ 8JvFmMpFX5RK+sn29l3vwC852h7CwPjpaN/XrjIq/3I
|
||||
LVHOqggZFi562Rd3Fr2ePbTyFDsIuROShUq3T6LVnBo
|
||||
--- WXzMczGriwzzcUkJhMOdVzMRfSCLwfUwzOwRU5z7Tr4
|
||||
ÚV&Mn\IÔ‹Ó~HeíKWø×PS2GCiÜÍóM%öyvs-ºo1õ5ã
|
||||
-> ssh-ed25519 hC2TMg DFbs+kB52Tsz3OqgIDcKrvViDw2rv4/R9FnfUi9p/04
|
||||
C8qgdSvuIRMnF0FqDX7uvjAv6/9Wc4Z2soyG/nMgKNo
|
||||
-> ssh-ed25519 Gfi4hQ 1vKc3JcAu6jmKhvNNxyBUTOkKup1qVzVf3yZWiYiHAQ
|
||||
tlOROgfmumAeo7u6X/PXw49UGIDWM7r1NGSo2Cs0BhM
|
||||
--- IULV3hNZSfBngJRDRcRijfLzn7Oj1iPoioyo1vqUaGE
|
||||
(i€UþÐ@
ï$U©
|
||||
eçJÅQÖ[ÐFVîsìÐ3`v©<ùƒUSMNÏý/
|
||||
Binary file not shown.
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg R8XRdHbLzVSEYlz2P4d0+imtxZnOZmtG2Hrhs+OkY1Y
|
||||
b6IUJ890xJEceyCGrrp0xlGmVgtfhn0qvAg19yWnMwY
|
||||
-> ssh-ed25519 Gfi4hQ YPoImdtxqMO2GjFVeXDzqmtH3JcHxP6CjfeYZD1diHc
|
||||
mj7b8FSrXiFvcCc2yVHV9GgtZDQvV2Lq/T1V+I4NsH4
|
||||
--- g+6x7BOXv3hlti1rlXsKoEK17fRSd9ReukGG43t2jrg
|
||||
åI;N™;FùãxãuBVˆ:
ÉT‡)÷½‰è*…ñn<C3B1>æ:æçcÖ+w¤Oé¨
|
||||
-> ssh-ed25519 hC2TMg VKKRBUo+B3BoCoUAdVObdbEYjc2jgRgaOMNzGaWl4m8
|
||||
mAl+2oQQU0I2xeateEyJzBr4wi2ErB0JMNyQdE+OPm8
|
||||
-> ssh-ed25519 Gfi4hQ oubD5PsQMTXjcGZztiCUkzSU2fP3rPhVCQ2sZY3fKTY
|
||||
C4hv2aQGNOJDMU2zSgGc+CQ1TLy/tF4zBJRVgWeiGoc
|
||||
--- hACW1LprkJJZHPwyCfQzYbsHvD4BYD6SwWzZO2DiznI
|
||||
å$€\!#©»‡¯þ<>S˜OëÄ7b"š‰øØoR›²L³¥Úéua5õ
|
||||
|
|
@ -1,8 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg nDn8cdsSuRv/XO5u/h1T8VGpZbkrsdte+ueF1ZUobhw
|
||||
KSK4TB5HrMHwdHngNM4VGBKfYhWBbKJKY18YCGYjyHw
|
||||
-> ssh-ed25519 Gfi4hQ M74IR8bxK3/KzzCN00azEFaU9eRhdEB+V+V7GH2Bf3Y
|
||||
mzKKwWX7su8FpVb48RSM3d3iZZy3SLfOL6/Hzo2yfa0
|
||||
--- /aLAt2joNYE6oeVrJRK+EumSTnHEb+E5caPS0HLNWy4
|
||||
<15>7•”k
|
||||
—c,<2C>©¹[dŒK©UÍàí§`ž¾>LŽ¥ãIÐE¬_Ë“¨
|
||||
-> ssh-ed25519 hC2TMg FGPfMQ837cCsa57PtNGdoL5iuJU6yBqBLOi38gTWa24
|
||||
+p1ov9CK680rvyt1wotbNOdc5A8DJo//LE9na01T7d4
|
||||
-> ssh-ed25519 Gfi4hQ lSZQLcW9jJmTFuIsF5aHiPJcMqsCouXa0TC8XSBMG3E
|
||||
sBDhduQ19U2pbrDziofbd9kwBHbhPO9FKOEJm/HXxCc
|
||||
--- EuEFQk9H4WPRWJF5qt9exFvy8IVea0YHIUgUkF9TSvA
|
||||
±Űáî±(Ô/żCí+Aô}ÄÓ‰B¸ş§ńt(„.żśĎC—ű|ŚśÎ€
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg +rLrjqElf41gDx5/V0uZeX42jgKq2OdoGIUiZZWcOVo
|
||||
5Yy9j+zoGrM79TF8N1YdOqtgq7VRW9NbimSs+2tirkE
|
||||
-> ssh-ed25519 Gfi4hQ v1UuYgI53qKi4+ZxmcOrgTcLBtAcmeyPYJMCLtF6CzQ
|
||||
bnkNvL9NPbcvautilYVNqxdhdt2xsbjbJh32kQCTJjk
|
||||
--- s/IQDcSq5lcxgZmz9XIEFNR197RewsdksMTM9MBGOCI
|
||||
½âꔞQpEQUÊu†¼ÝÞŠÎ9‚><3E>î‘“.ZÇ™<>W•Óý
|
||||
-> ssh-ed25519 hC2TMg 4FcYMlKpTQNeeUj7EkDFRVzlZ1ch1Qjd26mJLsSQNGA
|
||||
6fOpllptK9TGgXr3mFb/0bUvjhBjhXY7m8F0XR+e/pE
|
||||
-> ssh-ed25519 Gfi4hQ pGvIqYZxMsmynhWJiHMCD3YX0spQbmuqdel7o262bnc
|
||||
h7zmqOB0aJSY7pvD5EUEpDH0N2v7VkJPtssLnQK0wps
|
||||
--- kkhfrutrCG6qgnamNrVzgdPdU5DXro1soFbslTp64To
|
||||
Öú…9Nø`/¤¡Ï.¼£€<§È?84R!äU)èls[òÇE0Ù
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
age-encryption.org/v1
|
||||
-> ssh-ed25519 hC2TMg rKE6zb0itefbnwHKXzxZEE3Rt18q+qg9h4/jOJVabDE
|
||||
sAnTslcN+zxaBT8ZR53IjX9pUP4bAS9kmZfIM7iOpjA
|
||||
-> ssh-ed25519 Gfi4hQ wT4Jd7ctLUaQtB9oKiV6Ot7pIABvmRfaK/9duUJ0PR4
|
||||
uaVZZZEpbsceLsMjoLt7lUkM7T5bEJvsw80VHuFIVQA
|
||||
--- TZv1bkbXqioF48w3n1ayh/oRSAewdvhq5DYk9SABU+g
|
||||
Ì?uL‘{wEµ5q’ÿüÒ·^§3ž62“³Ì*Ø$¢<>ÃI›¾GpÝ€þ
|
||||
-> ssh-ed25519 hC2TMg MArpjBV+1UwxZYXhAc8N3rGrtjNie2gHxbauF7+Ho3w
|
||||
WIXIGJkgBzpx7on5KLEi8lW/iKcF0u0r4GVfLn2cLkA
|
||||
-> ssh-ed25519 Gfi4hQ qduy/LiAA/os2iU7oivTIfoTfWbBO/CQp8ZoXMkHr18
|
||||
kS/HOP4zP4/Q6FosIJ+3Uf6qeX/7ivSDhvCXl2a0MYg
|
||||
--- /dCQQyR+Y/57D6dBMEt8qGWj07yExjRWr4f50ZxEeuw
|
||||
zöä)4\ĺö<C4BA>ťÚ˘ô#“â,]Ní —pNúď˙m9á’™‘/pÖôÖ(˘=Ô7Ý
|
||||
Loading…
Reference in a new issue