私は長い間Windowsを使用してLinuxをネイティブオペレーティングシステムとして使用しようとしています。
- 私はRHEL 9.3(Plow)64ビットを使用しています。
- インストールしようとしています。シャッター。
dnf install shutter
指示通りに走ったときここ次のエラーメッセージが表示されます。
sudo dnf install shutter [sudo] password for simon: Updating
Subscription Management repositories. Last metadata expiration check:
0:08:13 ago on Sat 06 Apr 2024 13:38:27 BST. No match for argument:
shutter Error: Unable to find a match: shutter
私はインターネット検索/ChatGPTを実行しましたが、dnf
パッケージマネージャは現在アクティブなリポジトリに "shutter"というパッケージが見つからないためだと思います。
私の質問:dnf
特定のアプリケーションをインストールするためにどのリポジトリを追加する必要があるのか、どうすればわかりますか?どのような検索エンジンがありますか? Shutterプロジェクトが自分のウェブサイトにこの内容をリストしていないという事実には少し驚きましたが、他のプロジェクトのウェブサイトでも見たことはありません。したがって、私のアプローチに根本的に問題があることは間違いないと思います。
メモ:EPELリポジトリを追加しようとしましたが、シャッターは表示されません。
✘ simon@localhost / dnf repolist
Not root, Subscription Management repositories not updated
repo id repo name
code Visual Studio Code
codeready-builder-for-rhel-9-x86_64-rpms Red Hat CodeReady Linux Builder for RHEL 9 x86_64 (RPMs)
epel Extra Packages for Enterprise Linux 9 - x86_64
epel-cisco-openh264 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
google-chrome google-chrome
rhel-9-for-x86_64-appstream-rpms Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs)
rhel-9-for-x86_64-baseos-rpms Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs)
simon@localhost / dnf list --available | grep -i shutter
✘ simon@localhost /
答え1
特定のアプリケーションをインストールするためにどのリポジトリをdnfに追加する必要があるのか、どうすればわかりますか?
RHELでは他のディストリビューション(主にFedora)にはありますが、Red HatではサポートされていないパッケージをRHELにインポートするためのコミュニティの努力であるEPELが必要な場合があります。dnf install -y epel-release; dnf check-update
それを有効にします。
ただし、この場合はshutter
EPELにもありません。
どのような検索エンジンがありますか?
いくつかありますが、次のことをお勧めします。プロジェクトのホームページを調べることから始めます。結果が出ておらず、Red Hatの公式ソースやEPELにシャッターがない場合は、以下を使用する必要があります。第三者パッケージ;特定のディストリビューションに関心のあるソフトウェアを十分な時間内にパッケージ化しましたが、パッケージを「アップストリーム」するステップを実行しなかった人を最初に見つける必要があるため、これは非常に良い状況ではありません。彼らは、ソフトウェア開発者が正式に推奨するものを作成するためにプロジェクトと協力しなかったか、パッケージングコミュニティで正式に認められるためにディストリビューション/ EPELと協力しませんでした。これは通常、「実験的な」パッケージング/ソフトウェアの場合、または単に誰もそれを望まない場合です。
私の考えでは、シャッターがまだ「まだ実験的な」バージョン番号にある間(あなたは通常人々にまだエンドユーザーが使用する準備ができていないことを知らせたくない場合は、バージョン0としてリリースしないでください。後者の場合です。誰もがFedoraパッケージを使用せずにそれをエクスポートするためにRHELパッケージを作成しようとしません(一般的には非常に簡単です)、EPELに送信して更新ごとに作業に時間を費やしてください。
したがって、通常の検索エンジンでは何も見つからないようです。
- https://access.redhat.com/downloads/content/package-browserRHELパッケージの場合
- https://repology.org公式ソフトウェアリポジトリのコンテンツ
- https://www.rpmfind.orgRPMを使用するディストリビューションに適用可能(Fedora、RHEL、CentOS、Alma、Rocky、Amazon、Oracle、SUSE Linux...)
- https://packages.debian.orgDebianの場合は、Debian用のUbuntuパッケージをUbuntuに置き換えます。
運命!ソフトウェアを直接構築したり、デスクトップ環境ですでに提供されているような代替スクリーンショットプログラムを使用する必要があります。
自分でソフトウェアを構築することは難しくありません。通常。ただし、Shutterには依存関係リストが提供されておらず、システムへの依存関係を検出するビルドシステムが不足しているため、RHELで作業を実行するには、アップストリーム開発者が通常行う作業を実行する必要があります。正直、おそらくこの時点では、シャッターはまだあまりにも実験的です。誰かが物を適切に梱包する方法を理解するまで、少し優れたサポートを提供する製品を使用してください。
誰かが実際に試してみるように、RHEL 9のステップは次のとおりです。何Fedoraでパッケージを次のように移植します。これはテストされていないため、デバッグには役立ちません。これは、FedoraとRHELのパッケージ名の違いを変更しようともしません。予想されるまた、シャッターの依存関係を移植する必要があります。正直なところ、2024年にPerlで最新のデスクトップ用スクリーンショットユーティリティを作成することは、移植性に優れたオプションではありません。 Perlはさまざまな目的のための優れた言語ですが、確かに過去20年間のグラフィックアプリケーションではありませんでした。で人気の言語です。
RPMNAME=shutter
sudo dnf install -y epel-release
sudo dnf install -y --refresh fedpkg
fedpkg clone --anonymous "rpms/${RPMNAME}"
cd "${RPMNAME}"
fedpkg mockbuild
# after the build there will be a results* subdirectory
# bash: enable recursive globs
shopt -s globstar
sudo dnf install result*/**/*.rpm