fixed things and added things
This commit is contained in:
@@ -12,10 +12,24 @@
|
||||
<modules/services/home-assistant>
|
||||
<modules/services/docker-registry>
|
||||
<modules/services/ddns>
|
||||
<modules/services/rtmp-to-whip>
|
||||
];
|
||||
nixos = {
|
||||
networking.hostName = "nixos-001-rp5";
|
||||
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
|
||||
fsType = "ext4";
|
||||
options = ["noatime"];
|
||||
};
|
||||
"/boot/firmware" = {
|
||||
device = "/dev/disk/by-uuid/2175-794E";
|
||||
fsType = "vfat";
|
||||
options = ["noatime"];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [
|
||||
|
||||
@@ -22,13 +22,6 @@
|
||||
homeManager =
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
# REPLACE THIS ONCE ITS FIXED IN UPSTREAM
|
||||
# cssLsFixed = pkgs.vscode-langservers-extracted.overrideAttrs (old: {
|
||||
# postInstall = (old.postInstall or "") + ''
|
||||
# sed -i 's/import\.meta\.url/"file:\/\/"+__filename/g' \
|
||||
# $out/lib/node_modules/vscode-langservers-extracted/lib/css-language-server/node/cssServerMain.js
|
||||
# '';
|
||||
# });
|
||||
tiny-code-action = pkgs.vimUtils.buildVimPlugin {
|
||||
name = "tiny-code-action.nvim";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
@@ -148,7 +141,7 @@
|
||||
};
|
||||
cssls = {
|
||||
enable = true;
|
||||
# package = cssLsFixed;
|
||||
package = pkgs.vscode-langservers-extracted;
|
||||
};
|
||||
svelte.enable = true;
|
||||
};
|
||||
|
||||
+16
-3
@@ -17,9 +17,22 @@
|
||||
obs-studio = {
|
||||
enable = true;
|
||||
package = (
|
||||
pkgs.obs-studio.override {
|
||||
cudaSupport = true;
|
||||
}
|
||||
(pkgs.obs-studio.overrideAttrs (old: {
|
||||
version = "32.2.0-beta2-unstable";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "obsproject";
|
||||
repo = "obs-studio";
|
||||
rev = "27ac23ef750aafb2bb7ddd499ede5755a5a3087f";
|
||||
hash = "sha256-3wPHNgYzR+ZIbCYMh5ocyK/nsQxy24Wfa03kheYOU88=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
cmakeFlags = (old.cmakeFlags or []) ++ [
|
||||
"-DOBS_VERSION_OVERRIDE=32.2.0-beta2"
|
||||
];
|
||||
})).override
|
||||
{
|
||||
cudaSupport = true;
|
||||
}
|
||||
);
|
||||
plugins = with pkgs.obs-studio-plugins; [
|
||||
obs-pipewire-audio-capture
|
||||
|
||||
@@ -15,50 +15,14 @@
|
||||
"5" = {
|
||||
nixos = {pkgs, ...}: {
|
||||
imports = [
|
||||
# inputs.nixos-hardware.nixosModules.raspberry-pi-5
|
||||
inputs.nixos-raspberrypi.lib.inject-overlays-global
|
||||
inputs.nixos-raspberrypi.nixosModules.trusted-nix-caches
|
||||
inputs.nixos-raspberrypi.lib.inject-overlays
|
||||
|
||||
inputs.nixos-raspberrypi.nixosModules.raspberry-pi-5.base
|
||||
inputs.nixos-raspberrypi.nixosModules.raspberry-pi-5.page-size-16k
|
||||
inputs.nixos-raspberrypi.nixosModules.raspberry-pi-5.display-vc4
|
||||
inputs.nixos-raspberrypi.nixosModules.raspberry-pi-5.bluetooth
|
||||
|
||||
inputs.nixos-raspberrypi.nixosModules.sd-image
|
||||
inputs.nixos-hardware.nixosModules.raspberry-pi-5
|
||||
];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
libraspberrypi
|
||||
];
|
||||
|
||||
_module.args = {inherit (inputs) nixos-raspberrypi;};
|
||||
|
||||
sdImage.compressImage = false;
|
||||
|
||||
boot.loader.raspberry-pi.bootloader = "kernel";
|
||||
# boot.initrd.systemd.tpm2.enable = false;
|
||||
# boot.initrd.allowMissingModules = true;
|
||||
boot.supportedFilesystems.zfs = false;
|
||||
|
||||
# hardware.enableRedistributableFirmware = true;
|
||||
# fileSystems = {
|
||||
# "/boot/firmware" = {
|
||||
# device = "/dev/disk/by-uuid/2175-794E";
|
||||
# fsType = "vfat";
|
||||
# options = [
|
||||
# "noatime"
|
||||
# "noauto"
|
||||
# "x-systemd.automount"
|
||||
# "x-systemd.idle-timeout=1min"
|
||||
# ];
|
||||
# };
|
||||
# "/" = {
|
||||
# device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
|
||||
# fsType = "ext4";
|
||||
# options = ["noatime"];
|
||||
# };
|
||||
# };
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
{
|
||||
den,
|
||||
__findFile,
|
||||
modules,
|
||||
...
|
||||
}: {
|
||||
modules.services.provides.rtmp-to-whip = {
|
||||
nixos = {
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
systemd.services.init-rtmp-to-whip-network = {
|
||||
description = "Create rtmp-to-whip docker network";
|
||||
after = [ "docker.service" "docker.socket" ];
|
||||
requires = [ "docker.service" "docker.socket" ];
|
||||
before = [ "docker-rtmp-to-whip.service" "docker-rtmp-to-whip-frontend.service" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
${pkgs.docker}/bin/docker network inspect rtmp-to-whip >/dev/null 2>&1 || \
|
||||
${pkgs.docker}/bin/docker network create rtmp-to-whip
|
||||
'';
|
||||
};
|
||||
|
||||
virtualisation.oci-containers.containers = {
|
||||
rtmp-to-whip = {
|
||||
image = "reg.h.doloro.co.uk/doloro/rtmp-to-whip:latest";
|
||||
ports = [
|
||||
"0.0.0.0:1935:1935" # RTMP ingestion
|
||||
"0.0.0.0:6969:6969/udp" # WebRTC UDP
|
||||
];
|
||||
environment = {
|
||||
PUBLIC_DOMAIN = "rtmp.h.doloro.co.uk";
|
||||
RTC_PORT = "6969";
|
||||
SIGNUP_CODE = "";
|
||||
};
|
||||
volumes = [
|
||||
"/data/rtmp-to-whip/db.sqlite:/app/db.sqlite"
|
||||
];
|
||||
extraOptions = [ "--network=rtmp-to-whip" ];
|
||||
};
|
||||
|
||||
rtmp-to-whip-frontend = {
|
||||
image = "reg.h.doloro.co.uk/doloro/rtmp-to-whip-frontend:latest";
|
||||
ports = [
|
||||
"0.0.0.0:3002:3000"
|
||||
];
|
||||
environment = {
|
||||
VITE_API_URL = "http://rtmp-to-whip:3000";
|
||||
};
|
||||
extraOptions = [ "--network=rtmp-to-whip" ];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = {
|
||||
allowedTCPPorts = [ 1935 ];
|
||||
allowedUDPPorts = [ 6969 ];
|
||||
};
|
||||
|
||||
services.caddy = pkgs.lib.mkIf config.services.caddy.enable {
|
||||
virtualHosts."stream.h.doloro.co.uk".extraConfig = ''
|
||||
reverse_proxy :3002
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user