2025-01-01 02:02:00 -05:00
|
|
|
{ pkgs, config, lib, ... }:
|
2024-10-22 21:08:23 -04:00
|
|
|
{
|
2025-01-01 02:02:00 -05:00
|
|
|
options.services.nginx.rtmp = {
|
|
|
|
enable = lib.mkOption {
|
|
|
|
type = lib.types.bool;
|
|
|
|
default = false;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
config = lib.mkIf config.services.nginx.rtmp.enable {
|
|
|
|
services.nginx = {
|
|
|
|
package = (pkgs.nginx.override {
|
|
|
|
modules = with pkgs.nginxModules; [ rtmp ];
|
|
|
|
});
|
|
|
|
appendConfig = ''
|
|
|
|
rtmp {
|
|
|
|
server {
|
|
|
|
listen 1935;
|
|
|
|
chunk_size 4096;
|
|
|
|
allow publish all;
|
|
|
|
application stream {
|
|
|
|
record off;
|
|
|
|
live on;
|
|
|
|
allow play all;
|
|
|
|
hls on;
|
|
|
|
hls_path /var/www/Jimbo-Landing-Page/streams/hls/;
|
|
|
|
hls_fragment_naming system;
|
|
|
|
hls_fragment 3;
|
|
|
|
hls_playlist_length 40;
|
|
|
|
}
|
2024-10-22 21:08:23 -04:00
|
|
|
}
|
|
|
|
}
|
2025-01-01 02:02:00 -05:00
|
|
|
'';
|
|
|
|
};
|
2024-12-20 19:08:07 -05:00
|
|
|
|
2025-01-01 02:02:00 -05:00
|
|
|
systemd.services.nginx.serviceConfig = {
|
2025-01-01 18:32:50 -05:00
|
|
|
ReadWritePaths = [ "/var/www/landing-page/streams/hls/" ];
|
2025-01-01 02:02:00 -05:00
|
|
|
};
|
2024-12-20 19:08:07 -05:00
|
|
|
};
|
2024-10-22 21:08:23 -04:00
|
|
|
}
|