我如何制作我的第一个Linux发行包
#教程 #python #linux

我使用Python构建了Linux软件或分发软件包。我在“车轮”的帮助下完成了此操作,将我的源代码编译到与任何Linux系统兼容的单个安装文件中。

我们将从一个名为“ main.py”的简单python代码开始,该代码将在无限循环中每5秒打印出当前时间。

确保您具有以下目录结构(这是适当函数的必要):一个根目录,然后是软件包名称目录及其模块文件。

时间跟踪包装/
-Time_tracking/
--- main_file.py
-setup.py

我们的main_file.py代码:

import time


def main_func():
    try:
        while True:
            current_time = time.strftime("%Y-%m-%d %H:%M:%S")
            print("Current time:", current_time)
            time.sleep(5)
    except KeyboardInterrupt:
        pass


if __name__ == '__main__':
    main_func()

接下来,我们将添加Python配置文件SETUP.PY,以将整个项目编译到可安装的文件中。此文件将用于Linux服务器上的安装:

from setuptools import setup


setup(
    name='time-tracking-pkg',
    version='1.0.0',
    install_requires=[
        'wheel',
    ],
    entry_points={
        'console_scripts': [
            'time-tracking-pkg=time_tracking.main_file:main_func'
        ]
    },
)
  • namepip3 list中的包装名称。如果您使用下划线“ _”,则包装名称仍然将其转换为dash” - “无论如何
  • 包装的version
  • install_requires需要在设置期间安装的需要包。
  • console_scripts是我们定义软件包(Time-Tracking-PKG)及其源(Time_Tracking)的命令的地方。该软件包必须与软件包名称相同,您可以在命令上使用“ - ”或“ _”。

编译我们的项目:

python3 setup.py bdist_wheel

我们将获得3个新创建的目录:dist/build/time_tracking_pkg.egg-info/

我们将使用位于dist/中的文件time_tracking_pkg-1.0.0-py3-none-any.whl上传到Linux服务器(Ubuntu)。另外,请确保您在Ubuntu服务器上具有Python3和pip3。

上传到Ubuntu服务器后,使用此命令将软件包安装到我们的服务器中:

pip3 install time_tracking_pkg-1.0.0.0-py3-none-any.whl

Installation

完成后,我们将使用pip3 list检查是否正确安装。

Checking

终于!我们可以运行命令并获得结果:

时间跟踪pkg

Run

要查看其位置,使用:

pip3 show -f time-tracking-pkg

结论:

您还可以在此项目中添加另一个软件包,该项目将包含在设置文件中。但是请记住,当您使用pip3 uninstall time-tracking-pkg卸载时,这两个包装都将被删除。

在下一篇文章中,我将向您展示如何使其在服务器上运行,我们将调整代码以检查其工作原理。

我希望本文对您有帮助。当我试图为自己的工作开发它时,我很挣扎,这就是为什么我决定在这里写关于它的原因。