add debian and rhel packages
This commit is contained in:
parent
2b0e867439
commit
558ef25ab3
34
Cargo.toml
34
Cargo.toml
@ -2,6 +2,8 @@
|
||||
name = "ffplayout-rs"
|
||||
description = "24/7 playout based on rust and ffmpeg"
|
||||
license = "GPL-3.0"
|
||||
authors = ["Jonathan Baecker jonbae77@gmail.com"]
|
||||
readme = "README.md"
|
||||
version = "0.9.2"
|
||||
edition = "2021"
|
||||
|
||||
@ -36,3 +38,35 @@ path = "src/main.rs"
|
||||
opt-level = 3
|
||||
strip = true
|
||||
lto = true
|
||||
|
||||
# DEBIAN DEB PACKAGE
|
||||
[package.metadata.deb]
|
||||
name = "ffplayout-engine"
|
||||
priority = "optional"
|
||||
section = "net"
|
||||
license-file = ["LICENSE", "3"]
|
||||
depends = ""
|
||||
suggests = "ffmpeg"
|
||||
maintainer-scripts = "package/debian/"
|
||||
copyright = "Copyright (c) 2022, Jonathan Baecker. All rights reserved."
|
||||
assets = [
|
||||
["target/x86_64-unknown-linux-musl/release/ffplayout", "/usr/bin/ffplayout", "755"],
|
||||
["assets/ffplayout.yml", "/etc/ffplayout/ffplayout.yml", "644"],
|
||||
["assets/logo.png", "/usr/share/ffplayout/logo.png", "644"],
|
||||
["README.md", "/usr/share/doc/ffplayout-engine/README", "644"],
|
||||
["package/common/ffplayout-engine.service.preset", "/lib/systemd/system-preset/50-ffplayout-engine.preset", "644"],
|
||||
]
|
||||
systemd-units = { unit-name = "ffplayout-engine", unit-scripts = "package/common", enable = false }
|
||||
|
||||
# REHL RPM PACKAGE
|
||||
[package.metadata.generate-rpm]
|
||||
name = "ffplayout-engine"
|
||||
license = "GPL-3.0"
|
||||
assets = [
|
||||
{ source = "target/x86_64-unknown-linux-musl/release/ffplayout", dest = "/usr/bin/ffplayout", mode = "755" },
|
||||
{ source = "assets/ffplayout.yml", dest = "/etc/ffplayout/ffplayout.yml", mode = "644" },
|
||||
{ source = "package/common/ffplayout-engine.service", dest = "/lib/systemd/system/ffplayout-engine.service", mode = "644" },
|
||||
{ source = "README.md", dest = "/usr/share/doc/ffplayout-engine/README", mode = "644", doc = true },
|
||||
{ source = "LICENSE", dest = "/usr/share/doc/ffplayout-engine/LICENSE", mode = "644" },
|
||||
{ source = "assets/logo.png", dest = "/usr/share/ffplayout/logo.png", mode = "644" },
|
||||
]
|
||||
|
@ -36,7 +36,7 @@ logging:
|
||||
log_to_file: false
|
||||
backup_count: 7
|
||||
local_time: true
|
||||
timestamp: true
|
||||
timestamp: false
|
||||
log_path: /var/log/ffplayout/
|
||||
log_level: DEBUG
|
||||
ffmpeg_level: error
|
||||
|
@ -39,3 +39,17 @@ for target in "${targets[@]}"; do
|
||||
|
||||
echo ""
|
||||
done
|
||||
|
||||
echo "Create debian package"
|
||||
echo ""
|
||||
|
||||
cargo deb --target=x86_64-unknown-linux-musl
|
||||
|
||||
mv ./target/x86_64-unknown-linux-musl/debian/ffplayout-engine_${version}_amd64.deb .
|
||||
|
||||
echo "Create rhel package"
|
||||
echo ""
|
||||
|
||||
cargo generate-rpm --target=x86_64-unknown-linux-musl
|
||||
|
||||
mv ./target/x86_64-unknown-linux-musl/generate-rpm/ffplayout-engine-${version}-1.x86_64.rpm .
|
||||
|
@ -66,3 +66,19 @@ CC="aarch64-apple-darwin20.4-clang -arch arm64e" cargo build --release --target=
|
||||
# for x86_64
|
||||
CC="o64-clang" cargo build --release --target=x86_64-apple-darwin
|
||||
```
|
||||
|
||||
### Create debian DEB and RHEL RPM packages
|
||||
|
||||
install:
|
||||
- `cargo install cargo-deb`
|
||||
- `cargo install cargo-generate-rpm`
|
||||
|
||||
And run with:
|
||||
|
||||
```Bash
|
||||
# for debian based systems:
|
||||
cargo deb --target=x86_64-unknown-linux-musl
|
||||
|
||||
# for rhel based systems:
|
||||
cargo generate-rpm --target=x86_64-unknown-linux-musl
|
||||
```
|
||||
|
@ -1,9 +1,9 @@
|
||||
[Unit]
|
||||
Description=python and ffmpeg based playout
|
||||
Description=Rust based 24/7 playout solution
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStart= /usr/local/bin/ffplayout
|
||||
ExecStart= /usr/bin/ffplayout
|
||||
ExecReload=/bin/kill -1 $MAINPID
|
||||
Restart=always
|
||||
RestartSec=1
|
1
package/common/ffplayout-engine.service.preset
Normal file
1
package/common/ffplayout-engine.service.preset
Normal file
@ -0,0 +1 @@
|
||||
disable ffplayout-engine.service
|
@ -2,7 +2,7 @@ use clap::Parser;
|
||||
|
||||
#[derive(Parser, Debug)]
|
||||
#[clap(version,
|
||||
about = "ffplayout, the rust playout solution",
|
||||
about = "ffplayout, Rust based 24/7 playout solution",
|
||||
long_about = None)]
|
||||
pub struct Args {
|
||||
#[clap(short, long, help = "file path to ffplayout.conf")]
|
||||
|
Loading…
x
Reference in New Issue
Block a user