added service and user/group
This commit is contained in:
parent
00eba43f9f
commit
4252bbda0d
4 changed files with 67 additions and 20 deletions
50
.gear/livekit.service
Normal file
50
.gear/livekit.service
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
[Unit]
|
||||
Description=LiveKit Server (WebRTC SFU)
|
||||
Documentation=https://docs.livekit.io/
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
||||
Environment="LIVEKIT_CONFIG=/etc/livekit/livekit.yaml"
|
||||
|
||||
#ExecStartPre=/usr/bin/test -r ${LIVEKIT_CONFIG_FILE}
|
||||
ExecStart=/usr/bin/livekit-server
|
||||
|
||||
User=livekit
|
||||
Group=livekit
|
||||
UMask=0077
|
||||
WorkingDirectory=/var/lib/livekit
|
||||
|
||||
Restart=on-failure
|
||||
RestartSec=2s
|
||||
TimeoutStopSec=20s
|
||||
KillMode=mixed
|
||||
|
||||
StateDirectory=livekit
|
||||
RuntimeDirectory=livekit
|
||||
LogsDirectory=livekit
|
||||
|
||||
NoNewPrivileges=yes
|
||||
PrivateTmp=yes
|
||||
PrivateDevices=yes
|
||||
ProtectSystem=strict
|
||||
ProtectHome=yes
|
||||
ProtectControlGroups=yes
|
||||
ProtectKernelTunables=yes
|
||||
ProtectKernelModules=yes
|
||||
ProtectKernelLogs=yes
|
||||
ProtectClock=yes
|
||||
LockPersonality=yes
|
||||
MemoryDenyWriteExecute=yes
|
||||
RestrictRealtime=yes
|
||||
RestrictSUIDSGID=yes
|
||||
RemoveIPC=yes
|
||||
DevicePolicy=closed
|
||||
KeyringMode=private
|
||||
RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6
|
||||
SystemCallArchitectures=native
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
2
.gear/livekit.sysusers
Normal file
2
.gear/livekit.sysusers
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
g livekit - -
|
||||
u livekit - "LiveKit Server" /var/lib/livekit -
|
||||
|
|
@ -1,2 +1,4 @@
|
|||
tar: @name@ name=@name@-@version@
|
||||
tar: .gear/predownloaded-development name=@name@-development-@version@ base=
|
||||
copy: livekit.service
|
||||
copy: livekit.sysusers
|
||||
|
|
|
|||
33
livekit.spec
33
livekit.spec
|
|
@ -4,53 +4,46 @@ Release: alt1
|
|||
Summary: LiveKit WebRTC SFU media server
|
||||
License: Apache-2.0
|
||||
Group: System/Servers
|
||||
|
||||
Url: https://github.com/livekit/livekit
|
||||
VCS: https://github.com/livekit/livekit
|
||||
|
||||
#https://github.com/livekit/livekit/archive/refs/tags/v%{version}.tar.gz
|
||||
Source: %name-%version.tar
|
||||
|
||||
# Vendored Go module deps (must contain ./vendor + vendor/modules.txt)
|
||||
# Create once per version (outside hasher):
|
||||
# tarball=v%{version}
|
||||
# curl -L -o livekit-%{version}.tar.gz https://github.com/livekit/livekit/archive/refs/tags/${tarball}.tar.gz
|
||||
# tar -xf livekit-%{version}.tar.gz
|
||||
# cd livekit-%{version}
|
||||
# GOTOOLCHAIN=local go mod vendor
|
||||
# tar -cJf livekit-server-vendor-%{version}.tar.xz vendor
|
||||
Source1: %name-development-%version.tar
|
||||
Source2: %name.service
|
||||
Source3: %name.sysusers
|
||||
|
||||
BuildRequires: golang >= 1.24
|
||||
|
||||
%description
|
||||
LiveKit is an open-source, scalable multi-user WebRTC SFU (Selective Forwarding Unit).
|
||||
This package provides the livekit-server daemon.
|
||||
|
||||
%prep
|
||||
%setup -a1
|
||||
#%setup -q -n livekit-%{version}
|
||||
# unpack vendored deps into the same tree (expects "vendor/" at archive root)
|
||||
#%setup -q -T -D -a1
|
||||
|
||||
%build
|
||||
# go.mod declares go 1.24.x + toolchain; prevent auto toolchain download
|
||||
#export GOTOOLCHAIN=local
|
||||
#export CGO_ENABLED=0
|
||||
|
||||
# Force offline build from vendor/
|
||||
export GOFLAGS="-mod=vendor -trimpath"
|
||||
|
||||
go build -buildvcs=false -o livekit-server ./cmd/server
|
||||
go build -buildvcs=false -o %{name} ./cmd/server
|
||||
|
||||
%install
|
||||
install -Dpm0755 livekit-server %{buildroot}%{_sbindir}/livekit-server
|
||||
install -Dpm0644 config-sample.yaml %{buildroot}%{_sysconfdir}/livekit/livekit.yaml
|
||||
install -Dpm0755 %{name} %{buildroot}%{_sbindir}/%{name}
|
||||
install -Dpm0644 config-sample.yaml %{buildroot}%{_sysconfdir}/%{name}/%{name}.yaml
|
||||
install -Dpm0644 %SOURCE2 %{buildroot}%{_unitdir}/%{name}.service
|
||||
install -Dpm0644 %SOURCE2 %{buildroot}%{_sysusersdir}/%{name}.conf
|
||||
|
||||
%files
|
||||
#%license LICENSE
|
||||
#%license NOTICE
|
||||
%doc README.md CHANGELOG.md NOTICE LICENSE
|
||||
%{_sbindir}/livekit-server
|
||||
%config(noreplace) %{_sysconfdir}/livekit/livekit.yaml
|
||||
%{_sbindir}/%{name}
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.yaml
|
||||
%{_unitdir}/%{name}.service
|
||||
%{_sysusersdir}/%{name}.conf
|
||||
|
||||
%changelog
|
||||
* Tue Feb 24 2026 Romenskiy Arseniy <romenskiy2012@altlinux.org> 1.9.11-alt1
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue