diff --git a/youki/README.md b/youki/README.md new file mode 100644 index 0000000000000000000000000000000000000000..01891a17862acde91931b5017e29fecb3dd36af9 --- /dev/null +++ b/youki/README.md @@ -0,0 +1,7 @@ +# 注意 + +- spec文件中的Source0源的源代码编译会报错且`git clone master`也会编译报错,原因可能是该youki项目高频迭代,本仓库所提供的源代码可编译成功 + +- 目前版本0.0.2,官方明确表示 cargo版本不能低于1.58.1,建议用rustup切换cargo版本 + +- 在编译过程会 git [https://github.com/containers/oci-spec-rs](https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2Fcontainers%2Foci-spec-rs) 建议编译时配置代理网络 diff --git a/youki/youki-0.0.2-1.x86_64.rpm b/youki/youki-0.0.2-1.x86_64.rpm new file mode 100644 index 0000000000000000000000000000000000000000..0dd8eb12f8db8e823fe726c7b0365e1c4ae7a8ad Binary files /dev/null and b/youki/youki-0.0.2-1.x86_64.rpm differ diff --git a/youki/youki-0.0.2.tar.gz b/youki/youki-0.0.2.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..d956d912cfa79edc4043af3639360d1e02f8ddbd Binary files /dev/null and b/youki/youki-0.0.2.tar.gz differ diff --git a/youki/youki.spec b/youki/youki.spec new file mode 100644 index 0000000000000000000000000000000000000000..fe06d70e3249b1efc119c188a92e7efd2a9829d7 --- /dev/null +++ b/youki/youki.spec @@ -0,0 +1,61 @@ +%global cargo_min_version 1.58.1 +%global libgcc_min_version 8.5.0 +%global glibc_min_version 2.3.0 +%global share /usr/share +Name: youki +Version: 0.0.2 +Release: 1 +Summary: A container runtime written in Rust +License: Apache +URL: https://containers.github.io/youki +Source0: https://github.com/containers/youki/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz +# https://github.com/containers/youki/archive/refs/tags/v0.0.2/youki-0.0.2.tar.gz +# https://github.com/containers/youki.git +# 注意从Source0 源下载的编译会出错 建议用 git clone 并且将其 tar zcvf youki-0.0.2.tar.gz youki 添加进SOURCES目录 +# 注意官方明确表示cargo不得低于1.58.1 +# ExclusiveArch: +# BuildRequires: cargo >= %%{cargo_min_version} +BuildRequires: cargo +BuildRequires: pkg-config +BuildRequires: systemd-devel +BuildRequires: dbus-devel +BuildRequires: dbus-glib +BuildRequires: elfutils-libelf-devel +BuildRequires: libseccomp-devel +Requires: libseccomp-devel +Requires: docker +Requires: libgcc >= %{libgcc_min_version} +Requires: glibc >= %{glibc_min_version} +Requires: dbus + +%description + +%prep +%setup -q -n youki +cargo fetch --locked + +%build +cargo build --release + +%install +mkdir -p %{buildroot}/%{_bindir} +install -Dm755 target/release/youki %{buildroot}/%{_bindir}/youki + +install -dm755 %{buildroot}/usr/share/bash-completion/completions +./target/release/youki completion --shell bash > %{buildroot}/usr/share/bash-completion/completions/youki + +# install -dm755 %%{buildroot}/usr/share/zsh/site-functions +# ./target/release/youki completions zsh > %%{buildroot}/usr/share/zsh/site-functions/_youki + +# install -dm755 %%{buildroot}/usr/share/fish/vendor_functions.d +# ./target/release/youki completions fish > %%{buildroot}/usr/share/fish/vendor_functions.d/youki.fish + +%check +# cargo test +./target/release/youki -h + +%files +%license LICENSE +%{_bindir}/youki +%doc README.md +%{share}/bash-completion/completions/youki