Compare commits
19 commits
cc4de0ab86
...
77fdc520da
Author | SHA1 | Date | |
---|---|---|---|
77fdc520da | |||
b1cafa2440 | |||
bc117d8bfb | |||
43216c8d84 | |||
0ede12a26c | |||
3b42591d40 | |||
a5357ddf14 | |||
5ae4b596aa | |||
713c4d75d6 | |||
37787f0ca4 | |||
9212cd4c37 | |||
46c3afb3a5 | |||
d24846d0d5 | |||
11bfca5acd | |||
4d0e47fd36 | |||
739d1d8a57 | |||
3af3c916dc | |||
9c985a51fe | |||
f2bfbafa10 |
19 changed files with 243 additions and 220 deletions
192
flake.lock
192
flake.lock
|
@ -31,11 +31,11 @@
|
|||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722472866,
|
||||
"narHash": "sha256-GJIz4M5HDB948Ex/8cPvbkrNzl/eKUE7/c21JBu4lb8=",
|
||||
"lastModified": 1724086414,
|
||||
"narHash": "sha256-jcY81r8PdMQ9dCGhT0YLZzxPj3kQJXyWCmvQLXbR1EI=",
|
||||
"owner": "zhaofengli",
|
||||
"repo": "attic",
|
||||
"rev": "e127acbf9a71ebc0c26bc8e28346822e0a6e16ba",
|
||||
"rev": "acf3c351f8de47c6857f31948ab253f9c7ce2a6f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -101,11 +101,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1717025063,
|
||||
"narHash": "sha256-dIubLa56W9sNNz0e8jGxrX3CAkPXsq7snuFA/Ie6dn8=",
|
||||
"lastModified": 1722960479,
|
||||
"narHash": "sha256-NhCkJJQhD5GUib8zN9JrmYGMwt4lCRp6ZVNzIiYCl0Y=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "480dff0be03dac0e51a8dfc26e882b0d123a450e",
|
||||
"rev": "4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -165,6 +165,27 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"crane_4": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"pamedia",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1724006180,
|
||||
"narHash": "sha256-PVxPj0Ga2fMYMtcT9ARCthF+4U71YkOT7ZjgD/vf1Aw=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "7ce92819802bc583b7e82ebc08013a530f22209f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"disko": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -172,11 +193,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723426710,
|
||||
"narHash": "sha256-yrS9al6l3fYfFfvovnyBWnyELDQOdfKyai4K/jKgoBw=",
|
||||
"lastModified": 1724031427,
|
||||
"narHash": "sha256-o1HdAf+7IGv9M13R3c+zc/sJ0QgeEnhsvHBcodI4UpM=",
|
||||
"owner": "nix-community",
|
||||
"repo": "disko",
|
||||
"rev": "0d510fe40b56ed74907a021d7e1ffd0042592914",
|
||||
"rev": "4e719b38fa7c85f4f65d0308ca7084c91e7bdd6d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -196,11 +217,11 @@
|
|||
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723540261,
|
||||
"narHash": "sha256-jniQno8FCotJ0OUSxd43Zl5q0UsKbKvrtATduvrhO2g=",
|
||||
"lastModified": 1724086605,
|
||||
"narHash": "sha256-kZm8GJfEt8Na5JyNfjXCIUKiMOAbWDNsCejh2OeF7r8=",
|
||||
"owner": "nix-community",
|
||||
"repo": "emacs-overlay",
|
||||
"rev": "aa3997dd78a00dec18e4d22f6073f78778c75301",
|
||||
"rev": "d153d9f118d71fa8f4d3204639b4fd32d793ab57",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -258,11 +279,11 @@
|
|||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1673956053,
|
||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -391,12 +412,15 @@
|
|||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1667395993,
|
||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
||||
"lastModified": 1710146030,
|
||||
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
||||
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -422,7 +446,7 @@
|
|||
},
|
||||
"flake-utils_3": {
|
||||
"inputs": {
|
||||
"systems": "systems_2"
|
||||
"systems": "systems_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
|
@ -440,7 +464,7 @@
|
|||
},
|
||||
"flake-utils_4": {
|
||||
"inputs": {
|
||||
"systems": "systems_3"
|
||||
"systems": "systems_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1710146030,
|
||||
|
@ -546,11 +570,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723399884,
|
||||
"narHash": "sha256-97wn0ihhGqfMb8WcUgzzkM/TuAxce2Gd20A8oiruju4=",
|
||||
"lastModified": 1723986931,
|
||||
"narHash": "sha256-Fy+KEvDQ+Hc8lJAV3t6leXhZJ2ncU5/esxkgt3b8DEY=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "086f619dd991a4d355c07837448244029fc2d9ab",
|
||||
"rev": "2598861031b78aadb4da7269df7ca9ddfc3e1671",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -617,11 +641,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1722947113,
|
||||
"narHash": "sha256-DqsN/VkYVr4M0PVRQKXPPOTaind5miYZURIYqM4MxYM=",
|
||||
"lastModified": 1723948777,
|
||||
"narHash": "sha256-rX14joTzvRUiCfmCT0LUMV3Mxi79VJANcKB/kkh7Qys=",
|
||||
"owner": "oxalica",
|
||||
"repo": "nil",
|
||||
"rev": "70df371289962554cf7a23ed595b23a2ce271960",
|
||||
"rev": "4f3081d1f10bb61f197b780e67f426e53f818691",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -639,11 +663,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723348316,
|
||||
"narHash": "sha256-tCjKgg9HE0jFz7smwB3n3Wg++6K6umyK1rHpBIr/ZI4=",
|
||||
"lastModified": 1723871880,
|
||||
"narHash": "sha256-HKHx2tDZEcKTKKkhyIDRifJW7a4bxOsWlvIVI1qm+ng=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-ld-rs",
|
||||
"rev": "d1b139e7b8671ca1af26efaa71a28f3c031f9b66",
|
||||
"rev": "8af5fc9add315c251edea8f659b56fc7836a163f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -654,11 +678,11 @@
|
|||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1723310128,
|
||||
"narHash": "sha256-IiH8jG6PpR4h9TxSGMYh+2/gQiJW9MwehFvheSb5rPc=",
|
||||
"lastModified": 1724067415,
|
||||
"narHash": "sha256-WJBAEFXAtA41RMpK8mvw0cQ62CJkNMBtzcEeNIJV7b0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "c54cf53e022b0b3c1d3b8207aa0f9b194c24f0cf",
|
||||
"rev": "b09c46430ffcf18d575acf5c339b38ac4e1db5d2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -669,11 +693,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1711401922,
|
||||
"narHash": "sha256-QoQqXoj8ClGo0sqD/qWKFWezgEwUL0SUh37/vY2jNhc=",
|
||||
"lastModified": 1723827930,
|
||||
"narHash": "sha256-EU+W5F6y2CVNxGrGIMpY7nSVYq72WRChYxF4zpjx0y4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "07262b18b97000d16a4bdb003418bd2fb067a932",
|
||||
"rev": "d4a7a4d0e066278bfb0d77bd2a7adde1c0ec9e3d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -697,11 +721,11 @@
|
|||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1711460390,
|
||||
"narHash": "sha256-akSgjDZL6pVHEfSE6sz1DNSXuYX6hq+P/1Z5IoYWs7E=",
|
||||
"lastModified": 1720535198,
|
||||
"narHash": "sha256-zwVvxrdIzralnSbcpghA92tWu2DV2lwv89xZc8MTrbg=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "44733514b72e732bd49f5511bd0203dea9b9a434",
|
||||
"rev": "205fd4226592cc83fd4c0885a3e4c9c400efabb5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -713,11 +737,11 @@
|
|||
},
|
||||
"nixpkgs-stable_2": {
|
||||
"locked": {
|
||||
"lastModified": 1723282977,
|
||||
"narHash": "sha256-oTK91aOlA/4IsjNAZGMEBz7Sq1zBS0Ltu4/nIQdYDOg=",
|
||||
"lastModified": 1723938990,
|
||||
"narHash": "sha256-9tUadhnZQbWIiYVXH8ncfGXGvkNq3Hag4RCBEMUk7MI=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a781ff33ae258bbcfd4ed6e673860c3e923bf2cc",
|
||||
"rev": "c42fcfbdfeae23e68fc520f9182dde9f38ad1890",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -761,11 +785,11 @@
|
|||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1723362943,
|
||||
"narHash": "sha256-dFZRVSgmJkyM0bkPpaYRtG/kRMRTorUIDj8BxoOt1T4=",
|
||||
"lastModified": 1723991338,
|
||||
"narHash": "sha256-Grh5PF0+gootJfOJFenTTxDTYPidA3V28dqJ/WV7iis=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a58bc8ad779655e790115244571758e8de055e3d",
|
||||
"rev": "8a3354191c0d7144db9756a74755672387b702ba",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -777,23 +801,23 @@
|
|||
},
|
||||
"pamedia": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"flake-utils"
|
||||
],
|
||||
"naersk": [
|
||||
"naersk"
|
||||
"crane": "crane_4",
|
||||
"flake-parts": [
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": "rust-overlay"
|
||||
"rust-overlay": [
|
||||
"rust-overlay"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1688388711,
|
||||
"narHash": "sha256-jOtnok2dEZG/xASC2B0psgPIhZL0SGLNkHf7JV1z4Vc=",
|
||||
"lastModified": 1724097713,
|
||||
"narHash": "sha256-L8hEkKGtni5auxrqg10JVicpcDQ5Dt3RieAE6hljZyI=",
|
||||
"ref": "main",
|
||||
"rev": "ef2135b690569b15b454dd37384b4e569f6a33a7",
|
||||
"revCount": 9,
|
||||
"rev": "a9e35ae0161bd53aa9257d5d0ec157f5f324c025",
|
||||
"revCount": 15,
|
||||
"type": "git",
|
||||
"url": "https://git.datarift.nl/erwin/pamedia-rs.git"
|
||||
},
|
||||
|
@ -813,11 +837,11 @@
|
|||
"nixpkgs-stable": "nixpkgs-stable_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723202784,
|
||||
"narHash": "sha256-qbhjc/NEGaDbyy0ucycubq4N3//gDFFH3DOmp1D3u1Q=",
|
||||
"lastModified": 1723803910,
|
||||
"narHash": "sha256-yezvUuFiEnCFbGuwj/bQcqg7RykIEqudOy/RBrId0pc=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "c7012d0c18567c889b948781bc74a501e92275d1",
|
||||
"rev": "bfef0ada09e2c8ac55bbcd0831bd0c9d42e651ba",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -848,7 +872,7 @@
|
|||
"nixpkgs": "nixpkgs_2",
|
||||
"pamedia": "pamedia",
|
||||
"pre-commit-hooks": "pre-commit-hooks",
|
||||
"rust-overlay": "rust-overlay_2",
|
||||
"rust-overlay": "rust-overlay",
|
||||
"sops": "sops",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
}
|
||||
|
@ -871,42 +895,17 @@
|
|||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"pamedia",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"pamedia",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1688351637,
|
||||
"narHash": "sha256-CLTufJ29VxNOIZ8UTg0lepsn3X03AmopmaLTTeHDCL4=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "f9b92316727af9e6c7fee4a761242f7f46880329",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"rust-overlay_2": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723515680,
|
||||
"narHash": "sha256-nHdKymsHCVIh0Wdm4MvSgxcTTg34FJIYHRQkQYaSuvk=",
|
||||
"lastModified": 1724034091,
|
||||
"narHash": "sha256-b1g7w0sw+MDAhUAeCoX1vlTghsqcDZkxr+k9OZmxPa8=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "4ee3d9e9569f70d7bb40f28804d6fe950c81eab3",
|
||||
"rev": "c7d36e0947826e0751a5214ffe82533fbc909bc0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1013,6 +1012,21 @@
|
|||
"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"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
|
@ -1020,11 +1034,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1723454642,
|
||||
"narHash": "sha256-S0Gvsenh0II7EAaoc9158ZB4vYyuycvMGKGxIbERNAM=",
|
||||
"lastModified": 1723808491,
|
||||
"narHash": "sha256-rhis3qNuGmJmYC/okT7Dkc4M8CeUuRCSvW6kC2f3hBc=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "349de7bc435bdff37785c2466f054ed1766173be",
|
||||
"rev": "1d07739554fdc4f8481068f1b11d6ab4c1a4167a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
10
flake.nix
10
flake.nix
|
@ -11,9 +11,7 @@
|
|||
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
|
||||
flake-parts = {
|
||||
url = "github:hercules-ci/flake-parts";
|
||||
};
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
|
||||
nixos-hardware.url = "github:NixOS/nixos-hardware";
|
||||
|
||||
|
@ -135,8 +133,8 @@
|
|||
url = "git+https://git.datarift.nl/erwin/pamedia-rs.git?ref=main";
|
||||
inputs = {
|
||||
nixpkgs.follows = "nixpkgs";
|
||||
flake-utils.follows = "flake-utils";
|
||||
naersk.follows = "naersk";
|
||||
flake-parts.follows = "flake-parts";
|
||||
rust-overlay.follows = "rust-overlay";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -305,7 +303,7 @@
|
|||
pkgs.sops
|
||||
ssh-to-age
|
||||
taplo
|
||||
vscode-langservers-extracted
|
||||
# vscode-langservers-extracted
|
||||
yj
|
||||
|
||||
inputs'.disko.packages.disko
|
||||
|
|
|
@ -378,7 +378,7 @@ So is [[https://github.com/catppuccin/emacs][Catppuccin]]
|
|||
#+begin_src emacs-lisp
|
||||
(use-package catppuccin-theme
|
||||
:init
|
||||
(setq catppuccin-flavor 'latte)
|
||||
(setq catppuccin-flavor 'mocha)
|
||||
(load-theme 'catppuccin :no-confirm))
|
||||
#+end_src
|
||||
|
||||
|
|
|
@ -22,13 +22,13 @@ rec {
|
|||
overlays =
|
||||
[
|
||||
self.overlays.default
|
||||
inputs.rust-overlay.overlays.default
|
||||
inputs.attic.overlays.default
|
||||
inputs.emacs-overlay.overlay
|
||||
inputs.eww.overlays.default
|
||||
inputs.ha-now-playing.overlays.${system}
|
||||
inputs.nil.overlays.default
|
||||
inputs.pamedia.overlays.${system}
|
||||
inputs.rust-overlay.overlays.default
|
||||
inputs.ha-now-playing.overlays.${system}
|
||||
inputs.pamedia.overlays.default
|
||||
# inputs.atuin.overlays.default
|
||||
]
|
||||
++ nixpkgs.lib.optional (system == "aarch64-linux") (
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
{ self, nixos-hardware, ... }:
|
||||
{ modulesPath, ... }:
|
||||
{
|
||||
self,
|
||||
nixos-hardware,
|
||||
caddy-with-plugins,
|
||||
...
|
||||
}:
|
||||
{ pkgs, modulesPath, ... }:
|
||||
{
|
||||
imports = [
|
||||
(modulesPath + "/virtualisation/lxc-container.nix")
|
||||
|
@ -23,6 +28,16 @@
|
|||
};
|
||||
podman.enable = true;
|
||||
tailscale.enable = true;
|
||||
caddy-proxy = {
|
||||
enable = true;
|
||||
package = caddy-with-plugins.packages.${pkgs.system}.caddy-with-cloudflare;
|
||||
proxyHosts = [
|
||||
{
|
||||
externalHostname = "frigate.datarift.nl";
|
||||
proxyAddress = "localhost:8971";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
time.timeZone = "Europe/Amsterdam";
|
||||
|
@ -73,6 +88,7 @@
|
|||
sops.defaultSopsFile = ./secrets.yaml;
|
||||
sops.secrets = {
|
||||
frigate = { };
|
||||
caddy-env = { };
|
||||
};
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
|
|
|
@ -51,10 +51,10 @@ go2rtc:
|
|||
reolink:
|
||||
- rtsp://hass:{FRIGATE_DOORBELL_PASSWORD}@10.0.20.28/h264Preview_01_main
|
||||
# - http://10.0.20.28/flv?port=1935&app=bcs&stream=channel0_main.bcs&user=hass&password={FRIGATE_DOORBELL_PASSWORD}
|
||||
- ffmpeg:reolink#audio=opus
|
||||
- ffmpeg:reolink#audio=opus#hardware
|
||||
reolink_sub:
|
||||
- rtsp://hass:{FRIGATE_DOORBELL_PASSWORD}@10.0.20.28/h264Preview_01_sub
|
||||
- ffmpeg:reolink_sub#audio=opus
|
||||
- ffmpeg:reolink_sub#audio=opus#hardware
|
||||
# - http://10.0.20.28/flv?port=1935&app=bcs&stream=channel0_sub.bcs&user=hass&password={FRIGATE_DOORBELL_PASSWORD}
|
||||
webrtc:
|
||||
candidates:
|
||||
|
@ -62,16 +62,19 @@ go2rtc:
|
|||
- 100.84.124.27:8555 # Tailscale
|
||||
- stun:8555
|
||||
|
||||
tls:
|
||||
enabled: False
|
||||
|
||||
cameras:
|
||||
deurbel:
|
||||
ffmpeg:
|
||||
inputs:
|
||||
- path: rtsp://127.0.0.1:8554/reolink?video=copy&audio=aac
|
||||
input_args: preset-rtsp-restream
|
||||
input_args: preset-rtsp-restream-low-latency
|
||||
roles:
|
||||
- record
|
||||
- path: rtsp://127.0.0.1:8554/reolink_sub?video=copy
|
||||
input_args: preset-rtsp-restream
|
||||
- path: rtsp://127.0.0.1:8554/reolink_sub?video=copy&audio=aac
|
||||
input_args: preset-rtsp-restream-low-latency
|
||||
roles:
|
||||
- audio
|
||||
- detect
|
||||
|
@ -79,8 +82,8 @@ cameras:
|
|||
stream_name: reolink
|
||||
audio:
|
||||
enabled: True
|
||||
record:
|
||||
events:
|
||||
review:
|
||||
detections:
|
||||
required_zones:
|
||||
- erf
|
||||
snapshots:
|
||||
|
@ -88,15 +91,13 @@ cameras:
|
|||
- erf
|
||||
zones:
|
||||
erf:
|
||||
coordinates: 0,480,640,480,640,480,640,259,513,255,323,254,211,254,144,353,79,325,0,325
|
||||
coordinates: 0,1,1,1,1,1,1,0.487,0.806,0.471,0.52,0.464,0.303,0.466,0.217,0.64,0.156,0.677,0,0.677
|
||||
objects:
|
||||
- person
|
||||
- cat
|
||||
oprit:
|
||||
coordinates: 28,279,0,282,0,325,91,324
|
||||
coordinates: 0.04,0.576,0,0.578,0,0.677,0.148,0.673
|
||||
objects:
|
||||
- car
|
||||
|
||||
ui:
|
||||
live_mode: webrtc
|
||||
|
||||
|
|
|
@ -1,26 +1,20 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
{ config, ... }:
|
||||
{
|
||||
virtualisation.oci-containers.containers = {
|
||||
frigate = {
|
||||
autoStart = true;
|
||||
image = "ghcr.io/blakeblackshear/frigate:0.13.2";
|
||||
image = "ghcr.io/blakeblackshear/frigate:0.14.0";
|
||||
ports = [
|
||||
"1984:1984" # go2rtc
|
||||
"5000:5000" # Frigate
|
||||
"5000:5000" # Unauthenticated Frigate endpoint
|
||||
"8554:8554" # RTSP feeds
|
||||
"8555:8555/tcp" # WebRTC over tcp
|
||||
"8555:8555/udp" # WebRTC over udp
|
||||
"8971:8971" # Authenticated Frigate endpoint
|
||||
];
|
||||
volumes = [
|
||||
"/etc/localtime:/etc/localtime:ro"
|
||||
"${./config/config.yml}:/config/config.yml:ro"
|
||||
"${pkgs.go2rtc}/bin/go2rtc:/config/go2rtc"
|
||||
"/data/frigate:/media/frigate"
|
||||
];
|
||||
extraOptions = [
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
frigate: ENC[AES256_GCM,data:c83JfsPcB/lMiDjgq2Rsqr4oquHWyL9jlOxf4w/MFSxMLcx/u2Bw6WvsVCTYpN44Cy3mNZPJRa+T5X3Q8XjvQDVzIBo6dSBZ7nTZ3A9VOKhWtqcxvrWZdgkyb7GrsDrhy594DHOlBouo5JsGSb12ja3rAsl6lUA1xc5UV6V5cjlNgS1wHf4ZfutOSk3xP/Vq5tcXP6vFqQPofFmEb60BJ2DnLLdU7AVuxtHeY5uiA4DtsJVsdpaSq65EOm6PlpbhNbA53YBKMq2SXsQI636g8jb/SE1Zk2FWt8t8YqlVn/VIi7eG54dORxyX8fE=,iv:mRpO7d7RbOGIymRXtjMPDZKhPs16hqDC0CuAYKP7b1Y=,tag:ZD3sPd4n9X5DeqfuHdoOuQ==,type:str]
|
||||
caddy-env: ENC[AES256_GCM,data:E4Lkeh6rGw/f0CU07QT3a9vpXM4OTy9BkQ+or/pKYH3FmbSIk/kEz8IUOOF8aKl5GjoHxvmf,iv:MWRvMQY1/kTnAFspAuJytjLoSs3NR4WYkPy6FCbd18A=,tag:nTk60BUWpxJiSSLP73FIUw==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
|
@ -32,8 +33,8 @@ sops:
|
|||
YkFoWUpBNGhMRUloYzYvMlhPalBnSTgKXUV6iEE5ZU0tlaAAMDg4hrJSCoUkLA/B
|
||||
6WOwLvfq1/JTgyD58LVsJOqMJ8cqvG/4uHIcaHq17F9CFZykBprJqQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-02-06T14:55:31Z"
|
||||
mac: ENC[AES256_GCM,data:FISkEbL1HWQ+Du5z4ueeGZuEmvXywU+Rj2WKm+V8xVBEPWa/7+JDi4a51m8u6//ikr5F2XluCYTF5LOPJWVY3oSVMvM6l4sOFBzSLpbnhGOsy+qGnHwJcYHjgLL/XFh9UFZ8j7K78tFnGAOikJCmZhBOrf+7w2VqJrF56dpkoas=,iv:o+FCQN+YjkJTjScVozw97IT/ZWjHovkCoh5iIWa9rgA=,tag:8FU/GpiJfdTfm/UHBd/GbA==,type:str]
|
||||
lastmodified: "2024-08-14T12:50:35Z"
|
||||
mac: ENC[AES256_GCM,data:uwhqZYteEABKUj3hdw3TZBZaxbnwNYqM240EEprJnnEiVUczGbICipp6MgAW05T4JXYoPRvf1ZSeUfciubHfbY5dwxuoA4kPbO60MropNDW3FiUGRp3iBLnNPnCZKrDS+p72dhmGdQs+ToyzzUhCwSXN0Kbm2vwR8jLwpuGrkhc=,iv:B/NFi+1+pDC68zwrC9NfqWkxzxrdwGr0LNfJZ6O2iAY=,tag:Fs+ooTYnWyexJDHnfcph8Q==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.8.1
|
||||
version: 3.9.0
|
||||
|
|
|
@ -44,7 +44,6 @@
|
|||
enable = true;
|
||||
wayland = true;
|
||||
};
|
||||
element-web.enable = false;
|
||||
fonts.enable = true;
|
||||
gnome.enable = true;
|
||||
greetd = {
|
||||
|
@ -53,7 +52,7 @@
|
|||
river = true;
|
||||
wallpaper = ../../wallpapers/river-2560.png;
|
||||
};
|
||||
guix.enable = true;
|
||||
guix.enable = false;
|
||||
networking = {
|
||||
enable = true;
|
||||
};
|
||||
|
@ -250,6 +249,12 @@
|
|||
network = {
|
||||
enable = true;
|
||||
|
||||
config = {
|
||||
networkConfig = {
|
||||
IPv6PrivacyExtensions = true;
|
||||
};
|
||||
};
|
||||
|
||||
wait-online = {
|
||||
anyInterface = true;
|
||||
};
|
||||
|
@ -496,7 +501,6 @@
|
|||
environment = {
|
||||
sessionVariables = {
|
||||
AMD_VULKAN_ICD = "RADV";
|
||||
# WLR_RENDERER = "vulkan";
|
||||
};
|
||||
systemPackages = with pkgs; [
|
||||
incus
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
}
|
||||
{
|
||||
externalHostname = "frigate.datarift.nl";
|
||||
proxyAddress = "frigate.barn-beaver.ts.net:5000";
|
||||
proxyAddress = "frigate.barn-beaver.ts.net:8971";
|
||||
}
|
||||
{
|
||||
externalHostname = "minio.datarift.nl";
|
||||
|
|
52
machines/read/backup.nix
Normal file
52
machines/read/backup.nix
Normal file
|
@ -0,0 +1,52 @@
|
|||
{ pkgs, config, ... }:
|
||||
let
|
||||
borgJob = name: {
|
||||
environment = {
|
||||
BORG_RSH = "ssh -i ${config.sops.secrets.miniflux-backup-ssh-key.path}";
|
||||
};
|
||||
repo = "ssh://zh2088@zh2088.rsync.net/./backups/read/${name}";
|
||||
compression = "zstd,10";
|
||||
startAt = "*-*-* 2:30:00";
|
||||
extraInitArgs = "--make-parent-dirs";
|
||||
archiveBaseName = name;
|
||||
|
||||
encryption = {
|
||||
mode = "repokey-blake2";
|
||||
passCommand = "cat ${config.sops.secrets.miniflux-backup-pass.path}";
|
||||
};
|
||||
|
||||
prune = {
|
||||
keep = {
|
||||
within = "1d";
|
||||
daily = 7;
|
||||
weekly = 4;
|
||||
monthly = -1;
|
||||
};
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
services = {
|
||||
borgbackup.jobs = {
|
||||
postgresql = borgJob "postgresql" // {
|
||||
paths = [ "/var/backup/postgresql" ];
|
||||
};
|
||||
|
||||
miniflux = borgJob "miniflux" // {
|
||||
paths = [ "/var/lib/miniflux" ];
|
||||
};
|
||||
};
|
||||
postgresqlBackup = {
|
||||
enable = true;
|
||||
backupAll = true;
|
||||
|
||||
# borg will do compression and deduplication
|
||||
compression = "none";
|
||||
|
||||
startAt = "*-*-* 02:00:00";
|
||||
};
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.borgbackup ];
|
||||
|
||||
}
|
|
@ -11,6 +11,7 @@
|
|||
../../users/root
|
||||
../../users/erwin
|
||||
|
||||
./backup.nix
|
||||
./miniflux
|
||||
];
|
||||
|
||||
|
@ -97,6 +98,8 @@
|
|||
sops.secrets = {
|
||||
caddy-env = { };
|
||||
miniflux-env = { };
|
||||
miniflux-backup-ssh-key = { };
|
||||
miniflux-backup-pass = { };
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
caddy-env: ENC[AES256_GCM,data:gw+QSN+c2Lp2F4wNzhTXklq9sUrDT389KLAh2YRpZbqxWpodx4LPJ1uIUsMC1TdeYmq+lkI+,iv:iXjLwOfQo9wEa9bBlE5HYUKDNriJgcm7hxPsBys62hk=,tag:DbutFgWz5ZqHE1/aP4+7Ag==,type:str]
|
||||
miniflux-env: ENC[AES256_GCM,data:5H+/yRuPW6BodnHaq3E7bcqD7xSRLHwle6BdSpsyFPUY9lw7JT4445lnQlV/uliGJJTu0H9N3G5KhsDQbvvU8vw+5yQvX4EgYQnJfYMyEn8LmQE+ErGz5Lpx3A6sjFuy0KHCqbFJwf5jjfZwuxvNdTKv34gnR2u9+4Vyg5qjwAP4jw==,iv:HfLie5OUOkEKjSmm7rBfOtVhkIq9GA3NRfwDg5AD7MQ=,tag:1ysgjaklV6twaLPe5na+hw==,type:str]
|
||||
miniflux-backup-ssh-key: ENC[AES256_GCM,data:dr6ftji0Z8DXHY2fizf04/mjmE+KSDs3o8gqm/hfx+zfJenm6OzRItrfHrF4XkwsuACOsFNAx8U8kJMiAf/08FTIV3bz7gTo8faiVxl3ONUiqnVbA1SwooWgXrXBclmCLNq8c8XLzwigER6oO9BrR6vNxcUaMiDHgYKTeYCl6cl1f4aBB83aCMX/hFRvKVsPqCZgwU5V9CMWk2fomRccJ1AiRs/LuVjGsYTvTChr3itOVcwkhy4jlys2iifHdUumRtaAdVRlJOgux/NxKKwH6wXY+d6NFebUKz1zdKLPeO0hLMo6ynvnpdQs74Ph80VwtDslYtm1VTVl0uvDWSQrccSWdZH8CS4iGwCFBjoALlTz51QVf9DAttOqx7f3G8UsUHtwgVJ5AC/0ghv1mSt0L5CY6HjWw3KdNt9NM1kQejFUx57hWlggiJ7TDvtbhHkwZj1r90SiI3G9xbh65wwvAOyMEfg6ZrAFBNu+brt4MOFkvutzgDXTr04DivfkDJiQjZLNJWJyonLpsWTNwuJ7ql9cbBhtkB21MnKW,iv:Td3K5w/lPJcfZkmBgzeHY/H6U1VOIntjq00Hd7igAQ8=,tag:0jvn0eymOTDXeRNQVpE3zg==,type:str]
|
||||
miniflux-backup-pass: ENC[AES256_GCM,data:Ce2WmfTiS1/AMryheEjtfB6GBaNqDt6fUGUQdcGF8YFl/+sguiHxHtw5aK2INwlOkHcpSWoPicsc2MvMiZpbV5OFY9y+PEWaqSFECZ/SzNsq8xtLCUo+0BfiptcsRBS7GuAaajsMlcRDUVBJ5Fhf37/+vQKCFZcndwO1ODqtsXU=,iv:hRCI0gWVIzGaFm4jZjW0ydXjusmNlBDp29vvXV+uBaQ=,tag:/DRnc5ZTAaOoUXzKWls50g==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
|
@ -33,8 +35,8 @@ sops:
|
|||
alprbldiMEtZQ29DaUJzaEZlWmxXTmMKPYHIg4fMR5fbCoCAyHHuL/WGfn4D6mXJ
|
||||
yulfOqthMxvvWr+9sOBeAWIWSCcc0DBmDjvUTaDqVA7pnhZE+hQ2mw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2024-07-15T22:03:26Z"
|
||||
mac: ENC[AES256_GCM,data:T4BUMEd6lxXtndOH52M2SGqMm08kW6tG4VDcpaBv5De+DmSaXX2cojM2MIOVBnQjNxCT6534RZAvnG4cQkUiIgaqP+PDyb1w0cYnv+zfgE/yHQ/AkBXlnr4jblJLYtU/04HpFm5OGvjYxqXDrrcWu/tZD6lZgiDcqLO5R+V0Azg=,iv:/WNzbV8YJpdVD7nF+AFQz/why5QFKGYidIgh1V8VLGA=,tag:RyyZRIsF7kyg+ZgDD+7DhQ==,type:str]
|
||||
lastmodified: "2024-08-20T09:39:02Z"
|
||||
mac: ENC[AES256_GCM,data:jEngkwYqZc8vUS1y6pXYz+e5Wgo50+K5hILCzEbV12xNEquZrTwOix8jSqIO0jkZeApGBwi9YNeaIFVcDfcXB+NUvYQUG2Xycbi6s40Srq1Ddk4RAeSXprpB2fDOdiGRJcVcDbM2JBcR2BumIw5Jj0U87y69ib5wq5btzCNO8f8=,iv:VyKBOahM0J94EecJBEzmu44OEXDGNQaJ0jaPbB498c8=,tag:vn2ghrAHyGHFqQOnjHfKqw==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.0
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.eboskma.element-web;
|
||||
matrixClientConfig = pkgs.writeText "element-web.json" (builtins.readFile ./element-web.json);
|
||||
in
|
||||
{
|
||||
options.eboskma.element-web = {
|
||||
enable = mkEnableOption "activate element-web";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
eboskma.podman.enable = true;
|
||||
|
||||
virtualisation.oci-containers.containers = {
|
||||
element-web = {
|
||||
autoStart = true;
|
||||
image = "vectorim/element-web";
|
||||
ports = [ "8888:80" ];
|
||||
volumes = [ "${matrixClientConfig}:/app/config.json" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
{
|
||||
"default_server_config": {
|
||||
"m.homeserver": {
|
||||
"base_url": "https://matrix-client.matrix.org",
|
||||
"server_name": "matrix.org"
|
||||
},
|
||||
"m.identity_server": {
|
||||
"base_url": "https://vector.im"
|
||||
}
|
||||
},
|
||||
"disable_custom_urls": false,
|
||||
"disable_guests": true,
|
||||
"disable_login_language_selector": false,
|
||||
"disable_3pid_login": false,
|
||||
"brand": "Element",
|
||||
"integrations_ui_url": "https://scalar.vector.im/",
|
||||
"integrations_rest_url": "https://scalar.vector.im/api",
|
||||
"integrations_widgets_urls": [
|
||||
"https://scalar.vector.im/_matrix/integrations/v1",
|
||||
"https://scalar.vector.im/api",
|
||||
"https://scalar-staging.vector.im/_matrix/integrations/v1",
|
||||
"https://scalar-staging.vector.im/api",
|
||||
"https://scalar-staging.riot.im/scalar/api"
|
||||
],
|
||||
"bug_report_endpoint_url": "https://element.io/bugreports/submit",
|
||||
"defaultCountryCode": "NL",
|
||||
"showLabsSettings": true,
|
||||
"features": { },
|
||||
"default_federate": true,
|
||||
"default_theme": "light",
|
||||
"roomDirectory": {
|
||||
"servers": [
|
||||
"matrix.org"
|
||||
]
|
||||
},
|
||||
"piwik": false,
|
||||
"enable_presence_by_hs_url": {
|
||||
"https://matrix.org": false,
|
||||
"https://matrix-client.matrix.org": false
|
||||
},
|
||||
"settingDefaults": {
|
||||
"breadcrumbs": true
|
||||
},
|
||||
"jitsi": {
|
||||
"preferredDomain": "jitsi.riot.im"
|
||||
}
|
||||
}
|
|
@ -68,7 +68,6 @@ in
|
|||
"https://marcus7070.cachix.org"
|
||||
"https://devenv.cachix.org"
|
||||
"https://elixir-tools.cachix.org"
|
||||
"https://staging.attic.rs/attic-ci"
|
||||
];
|
||||
|
||||
trusted-public-keys = [
|
||||
|
@ -76,7 +75,6 @@ in
|
|||
"marcus7070.cachix.org-1:JawxHSgnYsgNYJmNqZwvLjI4NcOwrcEZDToWlT3WwXw="
|
||||
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
|
||||
"elixir-tools.cachix.org-1:GfK9E139Ysi+YWeS1oNN9OaTfQjqpLwlBaz+/73tBjU="
|
||||
"attic-ci:U5Sey4mUxwBXM3iFapmP0/ogODXywKLRNgRPQpEXxbo="
|
||||
];
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
|
|
|
@ -29,20 +29,39 @@ in
|
|||
programs.regreet = {
|
||||
enable = true;
|
||||
package = regreetWrapper;
|
||||
theme = {
|
||||
name = "Orchis-Dark";
|
||||
package = pkgs.orchis-theme.override {
|
||||
tweaks = [
|
||||
"compact"
|
||||
"macos"
|
||||
];
|
||||
border-radius = 5;
|
||||
};
|
||||
};
|
||||
|
||||
iconTheme = {
|
||||
name = "elementary";
|
||||
package = pkgs.pantheon.elementary-icon-theme;
|
||||
};
|
||||
|
||||
cursorTheme = {
|
||||
name = "catppuccin-mocha-dark-cursors";
|
||||
package = pkgs.catppuccin-cursors.mochaDark;
|
||||
};
|
||||
|
||||
font = {
|
||||
name = "Monaspace Neon";
|
||||
size = 16;
|
||||
package = pkgs.monaspace;
|
||||
};
|
||||
|
||||
settings = {
|
||||
background = {
|
||||
path = cfg.wallpaper;
|
||||
fit = "Cover";
|
||||
};
|
||||
|
||||
GTK = {
|
||||
application_prefer_dark_theme = true;
|
||||
theme_name = "Orchis-Dark";
|
||||
cursor_theme = "Catppuccin-Mocha-Dark-Cursors";
|
||||
icon_theme_name = "elementary";
|
||||
font_name = "Monaspace Neon 16";
|
||||
};
|
||||
|
||||
commands = {
|
||||
reboot = [
|
||||
"systemctl"
|
||||
|
|
|
@ -181,7 +181,6 @@ in
|
|||
dbeaver-bin
|
||||
doggo
|
||||
easyeffects
|
||||
element-desktop
|
||||
fd
|
||||
ffmpeg-full
|
||||
hashcat
|
||||
|
@ -206,7 +205,6 @@ in
|
|||
minio-client
|
||||
mpv
|
||||
nautilus
|
||||
nheko
|
||||
(noson.overrideAttrs (_: {
|
||||
qtWrapperArgs = "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ pkgs.libpulseaudio ]}";
|
||||
}))
|
||||
|
|
|
@ -243,7 +243,6 @@ in
|
|||
minio-client
|
||||
mpv
|
||||
nautilus
|
||||
nheko
|
||||
pamedia
|
||||
pass
|
||||
procs
|
||||
|
|
Loading…
Reference in a new issue