#app-image #desktop-environment #arg #argument #desktop-entry #cli

bin+lib appimanager

一个简单的命令行工具,用于从可执行文件创建和管理桌面条目

2 个稳定版本

1.0.1 2023年6月8日

#758命令行界面

MIT 许可证

13KB
219

AppImanager - 创建和管理 .desktop 条目
为您的 AppImage 或任何可执行文件。

rust git cli

一个命令行工具,通过生成 .desktop 文件作为条目,快速将您的 AppImage(或任何标记为可执行文件的任何内容)添加到桌面环境的应用程序菜单。

简单,但为了方便起见,具有许多可自定义的选项。

安装

运行此应用程序需要 Cargo。安装 Cargo 后,运行

cargoinstall appimanager

使用方法

A simple cli to create and manage desktop entries from executables

Usage: appimanager [OPTIONS] <COMMAND>

Commands:
  add     Generate .desktop file
  list    List .desktop files 
  delete  Delete .desktop file by index (displayed by list subcommand) 
  help    Print this message or the help of the given subcommand(s)

Options:
  -d, --dest-dir <DEST_DIR>  Destination path that store all .desktop files  (default=~/.local/share/applications)
  -h, --help                 Print help
  -V, --version              Print version

Examples: 
1. appimanager add myfile.AppImage 

-m: move executable to a path before generating .desktop file   
-n: name property of to be generated .desktop file 
-i: icon (path) property of to be generated .desktop file 
 

2. appimanager list 

3. appimanager delete 0 // note: .desktop index starts from 0 

4. set custom directory of desktop files instead of ~/.local/share/applications (not recommended)  

appimanager -d /path/here/ add myfile.AppImage //create myfile.desktop in /path/here/
appimanager -d /path/here/ list //list .desktop in /path/here
appimanager -d /path/here/ delete 0 //delete index 0 .desktop in /path/here


从源码构建

步骤

git clone https: //github.com/khuongduy354/appimanager.git 
cd appimanager  
cargo run //to build and run 
cargo build //to build only
cargo test //to test

其他事项

  • justfile(Makefile 的替代品)用于自动化一些事情(需要 just 来运行它)
  • personal.md 文档我的学习内容

贡献

  • 我非常需要关于以下方面的指导:应用程序功能、Rust 最佳实践、实现或应用程序结构。如果有人能提供任何形式的指导,我将非常感激。
  • 随时提出问题和建议功能。
  • 别忘了给它加星标!

备注

  • 对于 cargo:我之前发布了一个名为 appim 的 crate,这也是这个仓库的旧名称,然后我意识到不仅 AppImage 是可执行的,这个 crate 也进行了一些改变,增加了更多功能并有了测试覆盖率。

依赖

~1.2–1.7MB
~33K SLoC