catarina: radio interface
All checks were successful
nix / check (push) Successful in 6m6s

This commit is contained in:
L-Nafaryus 2024-10-02 22:20:12 +05:00
parent 44338f20c5
commit 1836d855d5
Signed by: L-Nafaryus
GPG Key ID: 553C97999B363D38
4 changed files with 258 additions and 37 deletions

250
flake.lock generated
View File

@ -1,5 +1,21 @@
{
"nodes": {
"advisory-db": {
"flake": false,
"locked": {
"lastModified": 1727353582,
"narHash": "sha256-2csMEEOZhvowVKZNBHk1kMJqk72ZMrPj9LQYCzP6EKs=",
"owner": "rustsec",
"repo": "advisory-db",
"rev": "cb905e6e405834bdff1eb1e20c9b10edb5403889",
"type": "github"
},
"original": {
"owner": "rustsec",
"repo": "advisory-db",
"type": "github"
}
},
"ags": {
"inputs": {
"nixpkgs": [
@ -8,11 +24,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1725841979,
"narHash": "sha256-SXYqzpHPuXFR6w/cUKo3VN8XRn6XA2mGbdRXs9oLk6k=",
"lastModified": 1727303518,
"narHash": "sha256-lO5JMynTxNZxg/+E4/Y9reeLGIz/M8cEue+Re4cP6qo=",
"owner": "Aylur",
"repo": "ags",
"rev": "aaef50bb2c80ef4b4a359329d72669a95e7c4796",
"rev": "cd543afec4d9ed708990e5ba52184716809bf248",
"type": "github"
},
"original": {
@ -39,11 +55,11 @@
},
"catppuccin": {
"locked": {
"lastModified": 1725509983,
"narHash": "sha256-NHCgHVqumPraFJnLrkanoLDuhOoUHUvRhvp/RIHJR+A=",
"lastModified": 1726952185,
"narHash": "sha256-l/HbsQjJMT6tlf8KCooFYi3J6wjIips3n6/aWAoLY4g=",
"owner": "catppuccin",
"repo": "nix",
"rev": "45745fe5960acaefef2b60f3455bcac6a0ca6bc9",
"rev": "630b559cc1cb4c0bdd525af506935323e4ccd5d1",
"type": "github"
},
"original": {
@ -53,6 +69,21 @@
}
},
"crane": {
"locked": {
"lastModified": 1727824512,
"narHash": "sha256-DvFQd58W20BEqh0BUt33eZhzPKBXGO/r9aiSFIVMaWU=",
"owner": "ipetkov",
"repo": "crane",
"rev": "a376dd1efac7bce448857c62961c6311be26cb09",
"type": "github"
},
"original": {
"owner": "ipetkov",
"repo": "crane",
"type": "github"
}
},
"crane_2": {
"locked": {
"lastModified": 1725409566,
"narHash": "sha256-PrtLmqhM6UtJP7v7IGyzjBFhbG4eOAHT6LPYOFmYfbk=",
@ -67,7 +98,79 @@
"type": "github"
}
},
"dream2nix": {
"inputs": {
"nixpkgs": [
"elnafo-radio",
"nixpkgs"
],
"purescript-overlay": "purescript-overlay",
"pyproject-nix": "pyproject-nix"
},
"locked": {
"lastModified": 1726523340,
"narHash": "sha256-Av5mdR2lAGUVdA6DJ8Anon3/FZg3DX4gl1Ff72rCpKU=",
"owner": "nix-community",
"repo": "dream2nix",
"rev": "b76c529f377100516c40c5b6e239a4525fdcabe0",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "dream2nix",
"type": "github"
}
},
"elnafo-radio": {
"inputs": {
"advisory-db": "advisory-db",
"crane": "crane_2",
"dream2nix": "dream2nix",
"fenix": "fenix",
"nix-std": "nix-std",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1727850538,
"narHash": "sha256-nFqdD4P7aDANhEGG7pRbNVf7AYosK6XCpZhx25Nar1M=",
"ref": "refs/heads/master",
"rev": "79de647d2aa3ddfe70fa3450cc066b3ed6c717d7",
"revCount": 9,
"type": "git",
"url": "https://vcs.elnafo.ru/L-Nafaryus/elnafo-radio"
},
"original": {
"type": "git",
"url": "https://vcs.elnafo.ru/L-Nafaryus/elnafo-radio"
}
},
"fenix": {
"inputs": {
"nixpkgs": [
"elnafo-radio",
"nixpkgs"
],
"rust-analyzer-src": [
"elnafo-radio"
]
},
"locked": {
"lastModified": 1726986637,
"narHash": "sha256-webLScPFCax18Z2lQHhaWzqqQRvV2Y1lOADqUa7VQbU=",
"owner": "nix-community",
"repo": "fenix",
"rev": "f5a9b01cd81b46228b3737669e8275b1f2da7d35",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "fenix",
"type": "github"
}
},
"fenix_2": {
"inputs": {
"nixpkgs": [
"nixpkgs"
@ -75,11 +178,11 @@
"rust-analyzer-src": []
},
"locked": {
"lastModified": 1726813972,
"narHash": "sha256-t6turZgoSAVgj7hn5mxzNlLOeVeZvymFo8+ymB52q34=",
"lastModified": 1727764514,
"narHash": "sha256-tvN9v5gTxLI5zOKsNvYl1aUxIitHm8Nj3vKdXNfJo50=",
"owner": "nix-community",
"repo": "fenix",
"rev": "251caeafc75b710282ee7e375800f75f4c8c5727",
"rev": "a9d2e5fa8d77af05240230c9569bbbddd28ccfaf",
"type": "github"
},
"original": {
@ -112,11 +215,11 @@
]
},
"locked": {
"lastModified": 1726153070,
"narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
"lastModified": 1727826117,
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github"
},
"original": {
@ -130,11 +233,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"lastModified": 1726560853,
"narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
"type": "github"
},
"original": {
@ -202,11 +305,11 @@
]
},
"locked": {
"lastModified": 1726825546,
"narHash": "sha256-HiBzfzgqojA9OjPB+vdi2o+gy4Zw/MEipuGopgGsZEw=",
"lastModified": 1727817100,
"narHash": "sha256-dlyV9/eiWkm/Y/t2+k4CFZ29tBvCANmJogEYaHeAOTw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0b052dd8119005c6ba819db48bcc657e48f401b7",
"rev": "437ec62009fa8ceb684eb447d455ffba25911cf9",
"type": "github"
},
"original": {
@ -232,6 +335,21 @@
"type": "github"
}
},
"nix-std": {
"locked": {
"lastModified": 1710870712,
"narHash": "sha256-e+7MJF2gsgTBuOWv4mCimSP0D9+naeFSw9a7N3yEmv4=",
"owner": "chessai",
"repo": "nix-std",
"rev": "31bbc925750cc9d8f828fe55cee1a2bd985e0c00",
"type": "github"
},
"original": {
"owner": "chessai",
"repo": "nix-std",
"type": "github"
}
},
"nixos-mailserver": {
"inputs": {
"blobs": "blobs",
@ -257,11 +375,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1726755586,
"narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=",
"lastModified": 1727634051,
"narHash": "sha256-S5kVU7U82LfpEukbn/ihcyNt2+EvG7Z5unsKW9H/yFA=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e",
"rev": "06cf0e1da4208d3766d898b7fdab6513366d45b9",
"type": "github"
},
"original": {
@ -333,11 +451,11 @@
"treefmt-nix": []
},
"locked": {
"lastModified": 1726846628,
"narHash": "sha256-0CH44sEwiljiN2q7eIFCvabyUm1WeEiF8ofP/z5ca0Q=",
"lastModified": 1727843841,
"narHash": "sha256-iMjPPKQ/04D7okDwIo8aZjTn0KSirXq0civDpSnosDQ=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "3211ce356be612ae89a38c60799992bde8a47127",
"rev": "dfbd272170805486383433114a5ed66ec9e9f040",
"type": "github"
},
"original": {
@ -355,11 +473,11 @@
]
},
"locked": {
"lastModified": 1726816132,
"narHash": "sha256-AbB0lgc0IbzLIxj1O3cosiMNAVQak4KJtvq9q8MjHhs=",
"lastModified": 1727599661,
"narHash": "sha256-0R+1ih0Rfqrz/lcduvpNSnUw3uthUHiaGh0aWPyIqeQ=",
"owner": "NuschtOS",
"repo": "search",
"rev": "7733a39a1321057172d87e6251ded7cdeb67171e",
"rev": "c3c3928b8de7d300c34e9d90fdc19febd1a32062",
"type": "github"
},
"original": {
@ -409,12 +527,53 @@
"type": "github"
}
},
"purescript-overlay": {
"inputs": {
"nixpkgs": [
"elnafo-radio",
"dream2nix",
"nixpkgs"
],
"slimlock": "slimlock"
},
"locked": {
"lastModified": 1696022621,
"narHash": "sha256-eMjFmsj2G1E0Q5XiibUNgFjTiSz0GxIeSSzzVdoN730=",
"owner": "thomashoneyman",
"repo": "purescript-overlay",
"rev": "047c7933abd6da8aa239904422e22d190ce55ead",
"type": "github"
},
"original": {
"owner": "thomashoneyman",
"repo": "purescript-overlay",
"type": "github"
}
},
"pyproject-nix": {
"flake": false,
"locked": {
"lastModified": 1702448246,
"narHash": "sha256-hFg5s/hoJFv7tDpiGvEvXP0UfFvFEDgTdyHIjDVHu1I=",
"owner": "davhau",
"repo": "pyproject.nix",
"rev": "5a06a2697b228c04dd2f35659b4b659ca74f7aeb",
"type": "github"
},
"original": {
"owner": "davhau",
"ref": "dream2nix",
"repo": "pyproject.nix",
"type": "github"
}
},
"root": {
"inputs": {
"ags": "ags",
"catppuccin": "catppuccin",
"crane": "crane",
"fenix": "fenix",
"elnafo-radio": "elnafo-radio",
"fenix": "fenix_2",
"home-manager": "home-manager",
"nixos-mailserver": "nixos-mailserver",
"nixpkgs": "nixpkgs",
@ -446,6 +605,29 @@
"type": "github"
}
},
"slimlock": {
"inputs": {
"nixpkgs": [
"elnafo-radio",
"dream2nix",
"purescript-overlay",
"nixpkgs"
]
},
"locked": {
"lastModified": 1688610262,
"narHash": "sha256-Wg0ViDotFWGWqKIQzyYCgayeH8s4U1OZcTiWTQYdAp4=",
"owner": "thomashoneyman",
"repo": "slimlock",
"rev": "b5c6cdcaf636ebbebd0a1f32520929394493f1a6",
"type": "github"
},
"original": {
"owner": "thomashoneyman",
"repo": "slimlock",
"type": "github"
}
},
"sops-nix": {
"inputs": {
"nixpkgs": [
@ -454,11 +636,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1726524647,
"narHash": "sha256-qis6BtOOBBEAfUl7FMHqqTwRLB61OL5OFzIsOmRz2J4=",
"lastModified": 1727734513,
"narHash": "sha256-i47LQwoGCVQq4upV2YHV0OudkauHNuFsv306ualB/Sw=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "e2d404a7ea599a013189aa42947f66cede0645c8",
"rev": "3198a242e547939c5e659353551b0668ec150268",
"type": "github"
},
"original": {
@ -526,11 +708,11 @@
},
"locked": {
"dir": "nix",
"lastModified": 1726842683,
"narHash": "sha256-n0k/znwnDGF3CNB2GhX9NfGg02mhxOzRTMmWr2EUxFs=",
"lastModified": 1727585736,
"narHash": "sha256-vEkcyKdFpfWbrtZlB5DCjNCmI2GudIJuHstWo3F9gL8=",
"owner": "wez",
"repo": "wezterm",
"rev": "abfc0b4c3aa2d6f99c76b20c4d7bdb6d0603ac80",
"rev": "a2f2c07a29f5c98f6736cde0c86b24887f9fd48a",
"type": "github"
},
"original": {

View File

@ -65,6 +65,10 @@
url = "github:wez/wezterm?dir=nix";
inputs.nixpkgs.follows = "nixpkgs";
};
elnafo-radio = {
url = "git+https://vcs.elnafo.ru/L-Nafaryus/elnafo-radio";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = {self, ...} @ inputs: let

View File

@ -51,7 +51,7 @@
};
};
radio-non-stop = {
radio-non-stop-pop = {
autoStart = true;
privateNetwork = true;
hostAddress = "10.231.136.1";
@ -84,7 +84,7 @@
port "6661"
encoder "lame"
max_clients "0"
website "https://radio.elnafo.ru/non-stop"
website "https://radio.elnafo.ru/non-stop-pop"
always_on "yes"
tags "yes"
bitrate "128"
@ -103,10 +103,44 @@
};
};
services.elnafo-radio = {
enable = true;
base = {
title = "// Elnafo Radio //";
meta = [
["author" "L-Nafaryus"]
["discord" "https://discord.gg/ZWUChw5wzm"]
["git" "https://vcs.elnafo.ru/L-Nafaryus/elnafo-radio"]
];
};
stations = [
{
id = "synthwave";
name = "Synthwave";
host = "10.231.136.2";
port = 6600;
url = "https://radio.elnafo.ru/synthwave";
status = "Receive";
genre = "synthwave, dark synthwave";
}
{
id = "non-stop-pop";
name = "Non-Stop-Pop";
host = "10.231.136.3";
port = 6601;
url = "https://radio.elnafo.ru/non-stop-pop";
status = "Online";
location = "Los Santos";
genre = "pop, r&b, dance music";
}
];
};
services.nginx.virtualHosts."radio.elnafo.ru" = {
forceSSL = true;
useACMEHost = "elnafo.ru";
locations."/".proxyPass = "http://127.0.0.1:54605";
locations."/synthwave".proxyPass = "http://10.231.136.2:6660";
locations."/non-stop".proxyPass = "http://10.231.136.3:6661";
locations."/non-stop-pop".proxyPass = "http://10.231.136.3:6661";
};
}

View File

@ -22,6 +22,7 @@
catarina = lib.nixosSystem {
system = "x86_64-linux";
modules = with inputs; [
elnafo-radio.nixosModules.elnafo-radio
nixos-mailserver.nixosModules.mailserver
sops-nix.nixosModules.sops
oscuro.nixosModules.oscuro