微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

通过 setuptools 部署用户配置

如何解决通过 setuptools 部署用户配置

我使用“setuptools”来打包 Python 项目,但什么也得不到。 我写了一个供个人使用的小实用程序,它有一个配置文件,我想放在 ~/.config/workon/config.json 下,所以我这样做:https://github.com/ReturnedVoid/workon/blob/master/setup.py#L15。然后像这样安装我的实用程序:https://github.com/ReturnedVoid/workon/blob/master/Makefile#L20

它可以工作,但存在一些问题:

  1. 有时(我不知道为什么)当我安装新版本的实用程序时,配置文件会被覆盖
  2. “pip”对配置文件一无所知,并且在我删除包时不会删除
  3. 如果我尝试使用 python3 -m pip install . 命令安装它,配置文件是相对于“站点包”(不是我想要的)安装的

我还尝试覆盖“setuptools”install 命令来复制配置文件,但它仅解决了上述 (1) 问题。

所以问题是:有没有办法简单地将我的配置文件复制到 ~/.config/... 以便它会被 pip uninstall 删除? 也许有更好的方法来处理用户配置?

更新:我看到了这些适用于我的案例的选项:

  1. 在文档中描述配置格式及其预期位置。所以让用户在需要时创建一个配置文件
  2. 构建一些能够执行此操作的分发包。例如 Debian 软件包...
  3. 在初始实用程序运行时生成配置文件

但它们都不是令人愉快的 :) 对我来说克隆项目、运行 make install、填写一次配置文件并忘记它会很方便。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。