Skip to content

Revert "deps: migrate from p7zip-full to 7zip package"#112

Merged
lzwind merged 1 commit intolinuxdeepin:masterfrom
dengzhongyuan365-dev:master
Apr 21, 2026
Merged

Revert "deps: migrate from p7zip-full to 7zip package"#112
lzwind merged 1 commit intolinuxdeepin:masterfrom
dengzhongyuan365-dev:master

Conversation

@dengzhongyuan365-dev
Copy link
Copy Markdown
Contributor

@dengzhongyuan365-dev dengzhongyuan365-dev commented Apr 16, 2026

由于系统依赖还没有完善,启动盘制作工作的这笔提交先回滚。后续系统依赖处
理了再添加进去。

This reverts commit 4764b67.

Please do not send pull requests to the linuxdeepin/*

see https://github.com/linuxdeepin/developer-center/wiki/Contribution-Guidelines-for-Developers

Thanks!

Summary by Sourcery

Build:

  • Switch the package dependency from 7zip back to p7zip in the RPM spec to align with existing system dependencies.

由于系统依赖还没有完善,启动盘制作工作的这笔提交先回滚。后续系统依赖处
理了再添加进去。

This reverts commit 4764b67.
@github-actions
Copy link
Copy Markdown

  • 检测到debian目录文件有变更: debian/control

@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented Apr 16, 2026

Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

This PR reverts a previous dependency migration by switching the runtime dependency from 7zip back to p7zip in packaging metadata, restoring the original system requirements for deepin-boot-maker.

File-Level Changes

Change Details Files
Revert packaging dependency from 7zip back to p7zip to match existing system environment and tools.
  • Change RPM spec runtime dependency from 7zip back to p7zip so builds/installations again depend on p7zip.
  • Align Debian packaging control metadata with the reverted dependency so both RPM and Debian packages consistently require p7zip instead of 7zip.
rpm/deepin-boot-maker.spec
debian/control

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@deepin-ci-robot
Copy link
Copy Markdown

deepin pr auto review

这段代码的 diff 显示了对 deepin-boot-maker 项目的打包配置文件(Debian 的 control 和 RPM 的 spec)进行了依赖项的修改。具体来说,是将压缩工具 7zip 替换为 p7zip-full (Debian) 和 p7zip (RPM)。

以下是对该修改的审查意见,涵盖语法逻辑、代码质量、性能和安全方面:

1. 语法逻辑与正确性

  • Debian (debian/control):
    • 修改前: 7zip
    • 修改后: p7zip-full
    • 分析: 这是一个正确的修正。在 Debian 的官方软件源中,并不存在名为 7zip 的二进制包。7zip 通常是源码包名称或者 Windows 下的程序名。Debian 提供的 7-Zip 命令行工具封装在 p7zip-full 包中(提供 7z 命令)或 p7zip 包中(仅提供 7za 命令)。考虑到启动盘制作工具通常需要完整的压缩/解压功能(包括处理自解压档案等),p7zip-full 是逻辑上正确的选择。
  • RPM (rpm/deepin-boot-maker.spec):
    • 修改前: 7zip
    • 修改后: p7zip
    • 分析: 这是一个正确的修正。在基于 RPM 的发行版(如 Fedora, openSUSE)中,包名通常为 p7zipp7zip-plugins。使用 7zip 作为包名通常会导致构建失败或安装时找不到依赖。

2. 代码质量

  • 可维护性: 这项修改提高了构建脚本的质量,因为它修复了包名错误,使得软件可以在标准的 Linux 发行版仓库中正确解析依赖。
  • 一致性: 修改确保了打包配置文件与实际操作系统发行版中的软件包命名规范保持一致。

3. 代码性能

  • 此修改仅影响依赖声明,不涉及运行时代码逻辑,因此对程序运行时的性能(CPU/内存占用)没有直接影响。

4. 代码安全

  • 潜在的安全风险: 注意p7zip (以及 p7zip-full) 软件包在许多 Linux 发行版中已经不再被积极维护,并且被认为是已死(dead)的上游项目。它可能包含未修复的安全漏洞。
  • 改进建议:
    • 长期建议: 考虑迁移到更现代、维护更活跃的压缩工具后端,例如 7z (来自新的 7zip Linux 移植版,如果发行版有提供) 或使用 Python 原生的 py7zr 库(如果该项目是 Python 写的,从文件名看可能是 Qt/C++ 项目,所以这点可能不适用)。
    • 替代方案: 检查系统是否可以使用 zstd 或其他更现代的算法,但这取决于 ISO 镜像本身的格式要求。
    • 当前语境: 如果必须支持旧版的 ISO 格式且必须使用 7-Zip 算法,目前的修改(使用 p7zip-full)是让软件能跑起来的必要步骤,尽管该软件本身已过时。

总结

该修改是必要的 Bug 修复。原配置中的 7zip 包名在 Linux 生态中是不正确的,会导致依赖安装失败。修改为 p7zip-full (Debian) 和 p7zip (RPM) 符合各发行版的包命名规范。

建议: 虽然修改解决了"装不上"的问题,但建议开发团队关注 p7zip 的维护状态,并在未来规划中评估替换为更安全、维护更活跃的压缩库。

@deepin-ci-robot
Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: dengzhongyuan365-dev, lzwind

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@lzwind lzwind merged commit c3c9e17 into linuxdeepin:master Apr 21, 2026
21 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants