feat: package OpenShell for Fedora

オープン
#3,510 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
30/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
fedora, python, rust

調査の方向性

Start with the root-level openshell.spec and the listed child issues, especially #1969, #2204, and #3454; inspect the current source, vendor inputs, and Fedora build constraints. Done means the package builds from source with rpmbuild/mock without network access after %prep, has documented dependency and license handling, and passes Fedora Rawhide and package-review requirements.

索引モデルが issue の本文から書いたものです。

説明

state:triage-needed
User Story

As a Red Hat engineer helping productize OpenShell for internal RPM/entitlement use, and as an OpenShell contributor, I want OpenShell available as a properly reviewed Fedora package, so Fedora users and downstream consumers can install it through their normal package manager instead of install scripts or third-party COPR repos.

Problem Statement

OpenShell has no path into Fedora today. The repo carries a root-level openshell.spec intended for Fedora/EPEL, but it isn't build-ready — it consumes externally prebuilt binaries rather than compiling from source, which Koji/mock cannot support. Getting into Fedora also requires resolving vendored-dependency policy questions (~600 vendored Rust crates), a bundled library with a system equivalent (Z3), and a vendored crypto stack that bypasses system crypto policy.

Impact / Why This Matters

Several Red Hat product efforts want a supported, source-buildable path to OpenShell RPMs; Fedora-first is one of two distribution paths being evaluated internally, and landing in Fedora is more durable and community-aligned than an internal-only channel. Today the only RPM path is a hand-rolled internal COPR build — not Fedora-reviewed, not broadly redistributable.

Proposed Design

Track the concrete engineering work as linked child issues, work through them roughly in dependency order, then proceed through Fedora's package review process once the spec is review-ready.

Acceptance Criteria
  • openshell.spec builds via rpmbuild/mock from source with no network access after %prep
  • Vendored dependencies are license-audited and correctly reflected in License:
  • Z3 and vendored-crypto bundling concerns are resolved or explicitly documented
  • A package review request is filed and approved via Fedora's New Package Process
  • OpenShell builds successfully in Fedora Rawhide
Alternatives Considered
  • Internal-only RPM distribution (via an internal COPR/entitlement channel) — already in progress in parallel by a separate internal team; faster to a shippable artifact but doesn't benefit the broader Fedora/community ecosystem and adds a second packaging surface to maintain long-term.
  • Container-image-only distribution (status quo) — doesn't meet the needs of consumers who want a system-package-manager-installable binary.
Child Issues
  • Fix %build to compile from source instead of consuming prebuilt binaries
  • Generate Python protobuf stubs during the build
  • Write a script to reproducibly generate Source0/Source1 (source + vendor tarballs)
  • Fix the version/Release scheme
  • Aggregate vendored-crate licenses into a real SPDX License: tag
  • Resolve Z3 bundling — #1969
  • Document the vendored-crypto (aws-lc-rs/rustls/ring) bundling justification
  • Add a CI job that actually builds/validates the spec

Related: #1969, #2204, #3454

Checklist
  • I've reviewed existing issues and the architecture docs
  • This is a design proposal, not a "please build this" request
主要言語
Rust
スター
8.7k
フォーク
1.3k
平均マージ
2日 6時間
マージ済み PR(30日)
236

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

NVIDIA/OpenShell のほかの issue

NVIDIA/OpenShell の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。