3 个不稳定版本
0.2.1 | 2021年1月9日 |
---|---|
0.2.0 | 2021年1月9日 |
0.1.2 | 2021年1月9日 |
#1072 在 文件系统
19KB
247 行
appimage_environment
在AppImage中以简单方式作为Rust程序进行交互。
示例用法
你可以从构建一个简单的appimage-directory开始,结构如下
mkdir -p appimage_dir/{bin,usr/local/bin,usr/bin,usr/games,data,web}
... 并添加一些必要的appimage组件(是的,我知道...这对我也很烦人)
wget "https://raw.githubusercontent.com/ph0llux/appimage_environment/main/appimage_example_stuff/init.desktop" -O appimage_dir/init.desktop
wget "https://raw.githubusercontent.com/ph0llux/appimage_environment/main/appimage_example_stuff/icon.png" -O appimage_dir/icon.png
... 现在复制一些示例内容
git clone https://github.com/ph0llux/get_ipv4_addr
cd get_ipv4_addr
make
cp get_ip_addr ../appimage_dir/usr/bin/
chmod +x ../appimage_dir/usr/src/get_ip_addr
cd ..
以正常方式创建一个cargo项目,并在main.rs中添加一些示例代码(别忘了在Cargo.toml中包含appimage_environment!)
extern crate appimage_environment;
use appimage_environment::Environment;
use appimage_environment::InternalCommand;
fn main() {
println!("{:?}", Environment::get_path_of("get_ip_addr"));
println!("{:?}", InternalCommand::get_stdout_from_call("get_ip_addr"));
}
现在你可以编译目标并添加到appimage中
cargo build --release
cp target/release/project_named_target ../appimage_dir/AppRun #your executable must be named "AppRun"
现在你可以构建你的appimage并执行(以x86_64为例)!
wget "https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage"
chmod +x appimagetool-x86_64.AppImage
./appimagetool-x86_64.AppImage -n appimage_dir
依赖关系
~8–18MB
~330K SLoC